4

I have a problem with the tex memory while using pgfplots and a very huge dataset in Ubuntu. Under Windows with MikTeX I have the following settings and the texfile compile without any problems:

main_memory=250000000   

extra_mem_top=50000000

extra_mem_bot=50000000  

save_size=15000

stack_size=15000

In Ubuntu 11.04 with TexLive i set the tex memory settings according to the pgfplots-manual.

1) i create a texmf.cnf in the directory: /home/user/System/mytexcnf

2) content of texmf.cnf is listed above.

3) run "sudo texhash"

4) create environment variable with: export TEXMFCNF=~/System/texmf/mytexcnf:

Running my texfile gives errors and here is the text from the logfile:

Here is how much of TeX's memory you used:
18954 strings out of 494950
443204 string characters out of 3177351
3000001 words of memory out of 3000000
21827 multiletter control sequences out of 15000+200000
5432 words of font info for 20 fonts, out of 3000000 for 9000
36 hyphenation exceptions out of 8191
65i,13n,78p,2482b,1740s stack positions out of 5000i,500n,10000p,200000b,50000s

Did i something wrong by setting the tex memory? How can i see from the logfile the needed values for the memory parameters? How can i change the texmf.cnf later? Only by opening in an editor, change the values, saving and run texhash?

  • 2
  • 1
    Check step 4: there's a texmf part that shouldn't be there. Also "sudo texhash" is not necessary. You'll probably have to rebuild your formats with fmtutil. – egreg Sep 20 '11 at 15:05
  • Did you rebuild the format files after changing the settings? This is required. – Martin Scharrer Sep 20 '11 at 15:06
  • i thougt texhash rebuild the format files. how do i rebuild the format files? – Mac-Cherony Sep 20 '11 at 15:31
  • sorry, i overread the fmtutil , but running fmtutil -- refresh don't work. i become still the memory error – Mac-Cherony Sep 20 '11 at 15:38
  • 1
    Usually the simplest solution is to compile with lualatex instead of pdflatex. LuaTeX dynamically increases the memory size. – Caramdir Sep 20 '11 at 16:52
  • In your case, the log output 3000001 words of memory out of 3000000 indicates that one of the limits is at 3 million - and I'd guess that it is the main memory. Apparently, your linux distribution has hard coded memory limits, i.e. you can change limits, but your changed parameters cannot exceed the hard coded limit. @Martin usually, one does not need to re-create format files (one really doesn't). Or do you think that re-creating formats would enlarge hard-coded restrictions? – Christian Feuersänger Sep 20 '11 at 18:12
  • @ChristianFeuersänger: No idea, never messed with that myself. I just read on that site that changes this kind of settings requires rebuilding the format files, because the limits are stored in them. – Martin Scharrer Sep 20 '11 at 18:15
  • @Mac-Cherony: texmf just updates the file database. Sorry, I can't help you with the rebuilding of the format files. – Martin Scharrer Sep 20 '11 at 18:16
  • I'd say that your linux already increased limits as far as it can. There are just two points of hope: a) it might have happened that your linux ignored your main memory limit because it is out-of-limits. Try reducing it to something smaller which is larger than 3 million. b) perhaps the environment variable TEXMFCNF was not in effect. Try reducing the mem limit to 2900000 to see if it has an effect. But before you spent too much time, you should try out the solution of Caramdir (use lualatex). – Christian Feuersänger Sep 20 '11 at 18:20

0 Answers0