Slides.Java - Extremely poor performance when converting PPSX to PDF

Hello,
A PowerPoint slide show file (PPSX) has caused the PDF rendering code hang for a few hours and subsequently crashed.

Conversion code:
//Load the custom font directory fonts
FontsLoader.loadExternalFonts(fontDir);
logger.debug(“fonts loaded.”);

	Integer detectedFormat = PresentationFactory.getInstance().getPresentationInfo(fileName).getLoadFormat();
	logger.debug("detected PPT file format: " + detectedFormat);
	com.aspose.slides.LoadOptions lo = new com.aspose.slides.LoadOptions();
	lo.setLoadFormat(detectedFormat);
	
	Presentation pres = new Presentation(contentStream, lo);
	logger.debug("New pres object created.");
	pres.save(targetFileName, SaveFormat.Pdf, pptPdfSaveOptions);

Execution log (note the time stamps). Each step takes huge amount of time:

*Font loading - 7 minutes
*format detection - 5 minutes
*loading presentation object - 24 minutes
*saving presentation object to PDF - several hours, with subsequent crash.

Please investigate. The source file attached.

Thanks,
Dmitry
2017-08-07 14:01:17,736 | DEBUG [http-0.0.0.0-0.0.0.0-9080-12] com.roche.etmf.integration.util.incomingemail.PdfRenderer - BEGIN - ppt2Pdf
2017-08-07 14:08:57,146 | DEBUG [http-0.0.0.0-0.0.0.0-9080-12] com.roche.etmf.integration.util.incomingemail.PdfRenderer - fonts loaded.
2017-08-07 14:13:34,706 | DEBUG [http-0.0.0.0-0.0.0.0-9080-12] com.roche.etmf.integration.util.incomingemail.PdfRenderer - detected PPT file format: 4
2017-08-07 14:37:38,819 | DEBUG [http-0.0.0.0-0.0.0.0-9080-12] com.roche.etmf.integration.util.incomingemail.PdfRenderer - New pres object created.

@dmitry.bystrokhodov,

I have observed your comments. Can you please share source file, i am unable to find any source file attached to this thread. Also please share which Aspose.Slides version you are using on your end.

Hello,

We use aspose.slides for Java 17.6.

Please download the file from this location:

and let me know when finished.

Thanks,
Dmitry

@dmitry.bystrokhodov,

I have worked with source file shared by you using Aspose.Slides for Java 17.7 and unable to observe the issue. I have also shared my generated result with you for your kind reference. Can you please try to use Aspose.Slides latest version 17.7 on your end. If there is still an issue than please share environment details and fonts you used on your end so that we may further investigate to help you out.Aspose123.zip (2.4 MB)

@Adnan.Ahmad

The issue persists in Aspose Slides Java 17.07.

Please download the fonts installed in our system and loaded into the Font Loader at this link:

System details:
Red Hat Enterprise Linux Server release 6.3 (Santiago)
Java™ SE Runtime Environment (build 1.8.0_91-b14)

@dmitry.bystrokhodov,

I have worked with source code shared by you using Aspose.Slides for Java 17.7 and have been able to observe the issue. A ticket with ID SLIDESJAVA-36547 has been created in our issue tracking system to further investigate and resolve the issue. This thread has been linked with issue so that you may be automatically notified once issue will be fixed.

We are sorry for your inconvenience,

@dmitry.bystrokhodov,

I like to inform that our product team investigated issue in details and we need more information from you. Can you please share hardware details and Java args details so that we may further investigate to help you out.

Hello,

Please accept my apology for delayed response due to vacation. The requested information is below.

OS:
Linux 2.6.32-431.23.3.el6.x86_64 x86_64 (VMWare)

Java command:
java -D[Standalone] -server -XX:+UseCompressedOops -XX:+TieredCompilation -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n -Xms5048m -Xmx5048m -XX:PermSize=128m -XX:MaxPermSize=768m -Xss256k -XX:+DisableExplicitGC -XX:+UseG1GC -verbose:gc -Xloggc:/var/opt/documentum/logs/JMS_gc.log.20171004172224 -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:-TraceClassUnloading -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=3M -XX:HeapDumpPath=/var/opt/documentum/etmfdev/temp_data/JMS_hprofs -Duser.timezone=Europe/Vaduz -Djboss.server.base.dir=/opt/documentum/cs/shared/jboss7.1.1/server/DctmServer_MethodServer -Djboss.server.log.dir=/var/opt/documentum/logs -Djava.io.tmpdir=/var/opt/documentum/etmfdev/temp_data -Djava.awt.headless=true -DAspose.Cells.Disable=SunFontManager -Djava.net.preferIPv4Stack=true -Dorg.jboss.boot.log.file=/var/opt/documentum/logs/boot.log -Dlogging.configuration=file:/opt/documentum/cs/shared/jboss7.1.1/server/DctmServer_MethodServer/configuration/logging.properties -jar /opt/documentum/cs/shared/jboss7.1.1/jboss-modules.jar -mp /opt/documentum/cs/shared/jboss7.1.1/modules -jaxpmodule javax.xml.jaxp-provider org.jboss.as.standalone -Djboss.home.dir=/opt/documentum/cs/shared/jboss7.1.1

Please let me know if additional info is requred.

@dmitry.bystrokhodov,

Thanks for sharing requested information. We will get back to you with feedback soon.

Hello, could you please provide a status update on this.

Thanks,
Dmitry

@dmitry.bystrokhodov,

I have verified the issue status from our issue tracking system and regret to share that the issue is still unresolved. Our product team will be sharing updates related to issue as soon as it will be fixed and we will be glad to share feedback with you. We request for your patience till the time our product team share its feedback.

@dmitry.bystrokhodov,

Our product team has investigated the issue on their end. We have not find any performance problems related issue directly linked to Aspose.Slides for Java. The performance is reduced on your end, because you have used Virtual Machine and also obtained Head Dump and GC settings are not optimal. All this together seriously reduces performance in general.

We have performed testing on RHEL 6 with JDK 1.8.112 (with java args -Xmx1024M). This following table shows results of different versions used:

			17.1	17.3	17.5	17.6	17.7

Fonts loading		162s	16s	16s	16s	16s

Format detection	10s	9s	9s	9s	9s

Loading presentation	32s	32s	30s	29s	31s

Saving presentation	97s	102s	96s	98s	81s

The issues you have found earlier (filed as ) have been fixed in this update. This message was posted using BugNotificationTool from Downloads module by MuzammilKhan