[ https://issues.apache.org/jira/browse/IMAGING-356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17739916#comment-17739916 ]
Gary D. Gregory edited comment on IMAGING-356 at 7/4/23 1:00 PM: ----------------------------------------------------------------- Hi [~gwlucas] After looking at VisualVM (see screengrab), I think the difference you see between alpha3 and now could be attributable to the hardening introduced to fix out-of-memory DOS attacks found by our integration with the Google OSS-Fuzz project. In this case, maybe the parameter checking in ImageBuilder.setRgb() which is called 49m times \(!). I did not try to undo those changes and re-profile though, as I don't think we should undo this fix. It is also worth noting that the profiling shows that 50.1% of the time is spent in the body of DataReaderStrips.interpretStrip(). There might be some optimization to do at that level or the overall algorithm. !image-2023-07-04-08-52-36-535.png! was (Author: garydgregory): Hi [~gwlucas] After looking at VisualVM (see screengrab), I think the difference you see between alpha3 and now could be attributable to the hardening introduced to fix out-of-memory DOS attacks found by our integration with the Google OSS-Fuzz project. In this case, maybe the parameter checking in ImageBuilder.setRgb() which is called 49m times (!). I did not try to undo those changes and re-profile though, as I don't think we should undo this fix. It is also worth noting that the profiling shows that 50.1% of the time is spent in the body of DataReaderStrips.interpretStrip(). There might be some optimization to do at that level or the overall algorithm. !image-2023-07-04-08-52-36-535.png! > TIFF reading extremely slow in version 1.0-SNAPSHOT > --------------------------------------------------- > > Key: IMAGING-356 > URL: https://issues.apache.org/jira/browse/IMAGING-356 > Project: Commons Imaging > Issue Type: Bug > Components: Format: TIFF > Affects Versions: 1.0 > Reporter: Gary Lucas > Priority: Major > Attachments: image-2023-07-04-08-52-36-535.png > > > I am using the latest code from github (1.0-SNAPSHOT downloaded from github > of June 2023) to read a 300 megabyte TIFF file. Version 1.0-alpha3 required > 673 milliseconds to read that file. The new code requires upward of 15 > minutes. Clearly something got broken since the last release. > The TIFF file is a 10000x10000 pixel 4 byte image format organized in strips. > The bottleneck appears to occur in the TiffReader getTiffRawImageData method > which reads raw data from the file in preparation of creating a BufferedImage > object. > I suspect that there may be a general slowness of file access. In debugging, > even reading the initial metadata (22 TIFF tags) took a couple of seconds. -- This message was sent by Atlassian Jira (v8.20.10#820010)