You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Aleksey Shipilev (JIRA)" <ji...@apache.org> on 2008/07/17 18:21:31 UTC
[jira] Created: (HARMONY-5916) [classlib][pack200] Isolating I/O
and processing stages
[classlib][pack200] Isolating I/O and processing stages
--------------------------------------------------------
Key: HARMONY-5916
URL: https://issues.apache.org/jira/browse/HARMONY-5916
Project: Harmony
Issue Type: Improvement
Components: Classlib
Environment: Latest pack200
Reporter: Aleksey Shipilev
So far the unpacking in pack200 implementation is strongly coupled with I/O. Because I/O is essentially serial, there's no opportunity for paralleling the unpacking. This issue breaks the unpacking into three parts: reading, processing and writing. The target is to concentrate as much as possible work into the processing stage, decoupling it from I/O. Then the processing stage could be done concurrently on multiple Segments.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (HARMONY-5916) [classlib][pack200] Isolating I/O
and processing stages
Posted by "Sian January (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sian January reassigned HARMONY-5916:
-------------------------------------
Assignee: Sian January
> [classlib][pack200] Isolating I/O and processing stages
> --------------------------------------------------------
>
> Key: HARMONY-5916
> URL: https://issues.apache.org/jira/browse/HARMONY-5916
> Project: Harmony
> Issue Type: Improvement
> Components: Classlib
> Environment: Latest pack200
> Reporter: Aleksey Shipilev
> Assignee: Sian January
> Attachments: pack200-isolate-v2.patch, pack200-isolate-v3.patch, pack200-isolate-v4.patch
>
>
> So far the unpacking in pack200 implementation is strongly coupled with I/O. Because I/O is essentially serial, there's no opportunity for paralleling the unpacking. This issue breaks the unpacking into three parts: reading, processing and writing. The target is to concentrate as much as possible work into the processing stage, decoupling it from I/O. Then the processing stage could be done concurrently on multiple Segments.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Closed: (HARMONY-5916) [classlib][pack200] Isolating I/O and
processing stages
Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Shipilev closed HARMONY-5916.
-------------------------------------
Verified, thanks.
> [classlib][pack200] Isolating I/O and processing stages
> --------------------------------------------------------
>
> Key: HARMONY-5916
> URL: https://issues.apache.org/jira/browse/HARMONY-5916
> Project: Harmony
> Issue Type: Improvement
> Components: Classlib
> Environment: Latest pack200
> Reporter: Aleksey Shipilev
> Assignee: Sian January
> Fix For: 5.0M7
>
> Attachments: pack200-isolate-v2.patch, pack200-isolate-v3.patch, pack200-isolate-v4.patch
>
>
> So far the unpacking in pack200 implementation is strongly coupled with I/O. Because I/O is essentially serial, there's no opportunity for paralleling the unpacking. This issue breaks the unpacking into three parts: reading, processing and writing. The target is to concentrate as much as possible work into the processing stage, decoupling it from I/O. Then the processing stage could be done concurrently on multiple Segments.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5916) [classlib][pack200] Isolating I/O
and processing stages
Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Shipilev updated HARMONY-5916:
--------------------------------------
Attachment: pack200-isolate-v2.patch
pack200-isolate-v2.patch
Proposed patch:
- breaks up unpack into unpackRead, unpackProcess, unpackWrite
- concentrates as much as possible non-I/O-work in unpackProcess
This patch passes JUnit tests for pack200.
Stage measurements (msecs):
read=6737 parse=26724 write=2537
> [classlib][pack200] Isolating I/O and processing stages
> --------------------------------------------------------
>
> Key: HARMONY-5916
> URL: https://issues.apache.org/jira/browse/HARMONY-5916
> Project: Harmony
> Issue Type: Improvement
> Components: Classlib
> Environment: Latest pack200
> Reporter: Aleksey Shipilev
> Attachments: pack200-isolate-v2.patch
>
>
> So far the unpacking in pack200 implementation is strongly coupled with I/O. Because I/O is essentially serial, there's no opportunity for paralleling the unpacking. This issue breaks the unpacking into three parts: reading, processing and writing. The target is to concentrate as much as possible work into the processing stage, decoupling it from I/O. Then the processing stage could be done concurrently on multiple Segments.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (HARMONY-5916) [classlib][pack200] Isolating I/O
and processing stages
Posted by "Sian January (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sian January resolved HARMONY-5916.
-----------------------------------
Resolution: Fixed
Fix Version/s: 5.0M7
Patch applied at r678796. Please check that it was applied as expected.
> [classlib][pack200] Isolating I/O and processing stages
> --------------------------------------------------------
>
> Key: HARMONY-5916
> URL: https://issues.apache.org/jira/browse/HARMONY-5916
> Project: Harmony
> Issue Type: Improvement
> Components: Classlib
> Environment: Latest pack200
> Reporter: Aleksey Shipilev
> Assignee: Sian January
> Fix For: 5.0M7
>
> Attachments: pack200-isolate-v2.patch, pack200-isolate-v3.patch, pack200-isolate-v4.patch
>
>
> So far the unpacking in pack200 implementation is strongly coupled with I/O. Because I/O is essentially serial, there's no opportunity for paralleling the unpacking. This issue breaks the unpacking into three parts: reading, processing and writing. The target is to concentrate as much as possible work into the processing stage, decoupling it from I/O. Then the processing stage could be done concurrently on multiple Segments.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5916) [classlib][pack200] Isolating I/O
and processing stages
Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Shipilev updated HARMONY-5916:
--------------------------------------
Attachment: pack200-isolate-v3.patch
pack200-isolate-v3.patch
V2 + pre-reading of the entire segment if possible
Successfully passes JUnit tests for pack200.
Stage measurements (msecs):
read=265 process=32358 write=2673
> [classlib][pack200] Isolating I/O and processing stages
> --------------------------------------------------------
>
> Key: HARMONY-5916
> URL: https://issues.apache.org/jira/browse/HARMONY-5916
> Project: Harmony
> Issue Type: Improvement
> Components: Classlib
> Environment: Latest pack200
> Reporter: Aleksey Shipilev
> Attachments: pack200-isolate-v2.patch, pack200-isolate-v3.patch
>
>
> So far the unpacking in pack200 implementation is strongly coupled with I/O. Because I/O is essentially serial, there's no opportunity for paralleling the unpacking. This issue breaks the unpacking into three parts: reading, processing and writing. The target is to concentrate as much as possible work into the processing stage, decoupling it from I/O. Then the processing stage could be done concurrently on multiple Segments.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-5916) [classlib][pack200] Isolating I/O
and processing stages
Posted by "Aleksey Shipilev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-5916?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Shipilev updated HARMONY-5916:
--------------------------------------
Attachment: pack200-isolate-v4.patch
pack200-isolate-v4.patch
- updated for current state of trunk.
- segment preread is switched off by default
> [classlib][pack200] Isolating I/O and processing stages
> --------------------------------------------------------
>
> Key: HARMONY-5916
> URL: https://issues.apache.org/jira/browse/HARMONY-5916
> Project: Harmony
> Issue Type: Improvement
> Components: Classlib
> Environment: Latest pack200
> Reporter: Aleksey Shipilev
> Attachments: pack200-isolate-v2.patch, pack200-isolate-v3.patch, pack200-isolate-v4.patch
>
>
> So far the unpacking in pack200 implementation is strongly coupled with I/O. Because I/O is essentially serial, there's no opportunity for paralleling the unpacking. This issue breaks the unpacking into three parts: reading, processing and writing. The target is to concentrate as much as possible work into the processing stage, decoupling it from I/O. Then the processing stage could be done concurrently on multiple Segments.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.