Running fpcup on Linux x86, Linux x64 with FPC fixes_2_6 Building LCL chm docs with build_lcl_docs, which calls fpdoc: On x86, seems to works ok. On x64, takes a long time. fpdoc takes a huge amount of CPU (perhaps memory as well, haven't looked).
I suspect the reason the doc generation is slow is because of fpdoc. Had a quick look at fpc trunk on Linux x64, problem seems to persist but it might be a lot better.... still, if possible, I'd like to offer users the possibility to run fixes 2.6... The wiki http://wiki.lazarus.freepascal.org/chm_backend_for_fpdoc does warn you about this: "Warning: this script enabled all fpdoc bells and whistles, and before 28feb took 40mins to complete on a core2-6600. After the cleanup still 4minutes and 400MB memory. If you want to do this in a nightly build, make sure you have a fpdoc from trunk, preferably from a checkout that was compiled with optimization on. That knocks off another half minute. ( 12.5%)" Questions: 1) Is it expected that the x64 version is much slower? 2) Is there anything else I can do to speed up LCL doc generation? 3) Optimize for speed probably is best, so recompile fpdoc with something like cd ~/fpc make fpdoc OPT="-O3" fpc fpdoc.pp Some optimistic (i.e. don't know what I'm doing exactly) browsing in FPC User's Guide gave: -OaPARAM=VALUE -OoREGVAR,OoSTACKFRAME,OoLOOPUNROLL,OoTAILREC -Chxxx Reserves xxx bytes heap. xxx should be between 1024 and 67107840. -CPX=N Set the packing for X to N. X can be PACKSET, PACKENUM or PACKRECORD, and N can be a value of 1,2,4,8 or one of the keywords DEFAULT or NORMAL. -Csxxx Set stack size to xxx. -CX Create a smartlinked unit when writing a unit. -Xs strip Are these useful (and at what values if so ;) ? What about whole-program optimization? Thanks, Reinier _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal