2

I'm trying to render .pdf to .png file using multithreaded ghostscript 9.07. Installed from .exe file. For this I call following procedure:

gswin64c.exe -dNumRenderingThreads=4 -dSAFER -dBATCH -dNOPAUSE -sDEVICE=png16m -r300 -sOutputFile=Graphic1.png Graphic1.pdf

My system is Windows 8 x64 running on quad core AMD phenom II processor and my test graphic is single page 109 MB pdf.

The procedure is processing the same time (about 32s for 300 dpi) regardless of whether the dNumRenderingThreads is set or not. What's more windows task manager shows that gs process uses only 2 threads (one for parsing and one for rednering as far as I know)

What am I doing wrong that rendering is not spread on many threads?

Kate Gregory
  • 18,808
  • 8
  • 56
  • 85
user1946472
  • 91
  • 2
  • 3
  • What is the disk light doing? If the program is compiled with BAND_LIST_STORAGE=file, the program could be i/o bound with disk access. You might also want to check the options MaxBitmap and BufferSpace, which could be prompting the disk usage. The defaultbitmap used to just be a meg and likely still is. you may also want to check out this thread `http://stackoverflow.com/questions/4548919/any-tips-for-speeding-up-ghostscript` – Fred F Apr 27 '13 at 22:02
  • disk is barely used during the rendering process. I checked that ghostscript I use was compiled with BAND_LIST_STORAGE=memory. According to the thread u suggested me I experimented with dBandBufferSpace and MaxBitmap with no effects.. " I read in documentation: "NumRenderingThreads When the display list (clist) banding mode is being used, bands can be rendered in separate threads." To be honest I don't get the idea with banding mode. Can you explain me what is it about? When I should use it? How do I turn on/off this mode and in general what should I know about it? – user1946472 Apr 27 '13 at 23:29
  • Ghostscript goes way back to when 4 megs of ram was considered a lot. Ram back then cost $120 per megs, so even if a computer could hold 100 megs of ram, it would cost $12,000. Banding was a method to build a page on disk, while working with just bands of data in ram. Postscript also isn't a language designed for threads. – Fred F Apr 28 '13 at 01:18

0 Answers0