Hi, Taco and Mojca:
On Sat, Jul 18, 2009 at 9:00 PM, Mojca
Miklavec
On Sat, Jul 18, 2009 at 14:24, Yue Wang wrote:
just a simple test. (works on mac os x 10.5.x, intel mac. on idea on other platforms...)
240:luatex yue$ svn diff Index: build.sh =================================================================== --- build.sh (revision 2888) +++ build.sh (working copy) @@ -59,6 +59,11 @@ if [ `uname` = "Darwin" ] ; then export MACOSX_DEPLOYMENT_TARGET=10.4 + CFLAGS="-arch x86_64 -arch i386 $CFLAGS" + XCFLAGS="-arch x86_64 -arch i386 $XCFLAGS" + CXXFLAGS="-arch x86_64 -arch i386 $CXXFLAGS" + LDFLAGS="-arch x86_64 -arch i386 $LDFLAGS" + export CFLAGS CXXFLAGS LDFLAGS XCFLAGS fi;
I'm sorry, I didn't read careful enough. I thought we were talking about intel vs. ppc.
Adding those flags to build.shu nconditionally would mean that anyone trying to compile LuaTeX on ppc won't be able to do so for his own platform, so such flags would need to go to a separate section (if user supplies some special flag to build in such mode).
my fault. there should be a conditional test there. but I have no ppc machine to test as i mentioned in the previous mail.
We definitely need to start thinking about 64-bit support, but not unconditionally. Apparently 10.6 won't support ppc any more and Yue says that 64-bit version of luatex runs slower and consumes more memory (+ being twice as big).
Yes, here are the log files when running the x86 and x86_64 binaries using the same test document. x86_64: mkiv lua stats : used config path - /Users/yue/context/tex/texmf/web2c/texmf.cnf mkiv lua stats : used cache path - /Users/yue/context/tex/texmf-cache mkiv lua stats : input load time - 0.053 seconds mkiv lua stats : stored bytecode data - 170 modules, 45 tables, 215 chunks mkiv lua stats : node list callback tasks - 4 unique tasks, 3 created, 810 calls mkiv lua stats : cleaned up reserved nodes - 39 nodes, 10 lists of 1412 mkiv lua stats : node memory usage - 138 attribute, 19 glue_spec, 46 attribute_list, 46 local_par, 2 dir mkiv lua stats : h-node processing time - 0.922 seconds including kernel mkiv lua stats : attribute processing time - 0.257 seconds mkiv lua stats : loaded patterns - en:us:pat:exc:2 mkiv lua stats : startup time - 1.205 seconds (including runtime option file processing) mkiv lua stats : callbacks - direct: 3838, indirect: 5118, total: 8956 mkiv lua stats : loaded fonts - 38 files: adobesongstd-light.otf minionpro-bold.otf minionpro-it.otf minionpro-regular.otf myriadpro-bold.otf myriadpro-regular.otf tektonpro-regular.otf lmmono12-regular.otf lmmono8-regular.otf lmmono9-regular.otf lmroman12-bold.otf lmroman12-regular.otf lmroman7-bold.otf lmroman7-regular.otf lmroman9-bold.otf lmroman9-regular.otf lmsans12-regular.otf lmsans8-regular.otf lmsans9-regular.otf eufb10.tfm eufb7.tfm eufb9.tfm eufm10.tfm eufm7.tfm eufm9.tfm msam10.tfm msam7.tfm msbm10.tfm msbm7.tfm lmex10.tfm lmmi12.tfm lmmi7.tfm lmmi9.tfm lmmib10.tfm lmmib7.tfm lmsy10.tfm lmsy7.tfm lmsy9.tfm mkiv lua stats : fonts load time - 2.163 seconds mkiv lua stats : graphics processing time - 0.098 seconds including tex, n=23 mkiv lua stats : result saved in file - ps.pdf mkiv lua stats : luatex banner - this is luatex, version beta-0.42.0-2009071820 mkiv lua stats : control sequences - 30398 of -443887883 mkiv lua stats : current memory usage - 104 MB (ctx: 107 MB) mkiv lua stats : runtime - 7.127 seconds, 28 processed pages, 28 shipped pages, 3.929 pages/secondMTXrun | total runtime: 7.198 i386: mkiv lua stats : used config path - /Users/yue/context/tex/texmf/web2c/texmf.cnf mkiv lua stats : used cache path - /Users/yue/context/tex/texmf-cache mkiv lua stats : input load time - 0.038 seconds mkiv lua stats : stored bytecode data - 170 modules, 45 tables, 215 chunks mkiv lua stats : node list callback tasks - 4 unique tasks, 3 created, 810 calls mkiv lua stats : cleaned up reserved nodes - 39 nodes, 10 lists of 1412 mkiv lua stats : node memory usage - 138 attribute, 19 glue_spec, 46 attribute_list, 46 local_par, 2 dir mkiv lua stats : h-node processing time - 0.608 seconds including kernel mkiv lua stats : attribute processing time - 0.162 seconds mkiv lua stats : loaded patterns - en:us:pat:exc:2 mkiv lua stats : startup time - 0.898 seconds (including runtime option file processing) mkiv lua stats : callbacks - direct: 3838, indirect: 5118, total: 8956 mkiv lua stats : loaded fonts - 38 files: adobesongstd-light.otf minionpro-bold.otf minionpro-it.otf minionpro-regular.otf myriadpro-bold.otf myriadpro-regular.otf tektonpro-regular.otf lmmono12-regular.otf lmmono8-regular.otf lmmono9-regular.otf lmroman12-bold.otf lmroman12-regular.otf lmroman7-bold.otf lmroman7-regular.otf lmroman9-bold.otf lmroman9-regular.otf lmsans12-regular.otf lmsans8-regular.otf lmsans9-regular.otf eufb10.tfm eufb7.tfm eufb9.tfm eufm10.tfm eufm7.tfm eufm9.tfm msam10.tfm msam7.tfm msbm10.tfm msbm7.tfm lmex10.tfm lmmi12.tfm lmmi7.tfm lmmi9.tfm lmmib10.tfm lmmib7.tfm lmsy10.tfm lmsy7.tfm lmsy9.tfm mkiv lua stats : fonts load time - 1.643 seconds mkiv lua stats : graphics processing time - 0.082 seconds including tex, n=23 mkiv lua stats : result saved in file - ps.pdf mkiv lua stats : luatex banner - this is luatex, version beta-0.42.0-2009071723 mkiv lua stats : control sequences - 30398 of 147189 mkiv lua stats : current memory usage - 69 MB (ctx: 71 MB) mkiv lua stats : runtime - 5.173 seconds, 28 processed pages, 28 shipped pages, 5.413 pages/secondMTXrun | total runtime: 5.221 as you can see, 64 bits is slower, and consume much more memory. (usually 64bits apps should perform faster on math since there are extra registers) In my humble opinion this is because TeX manages memory by it self... and maybe a 64bit memory word of packed data uses twice of memory as 32bits one.... I am not sure.
We should either discuss it a bit or wait until the first user gets bitten by the issue. After all we also depend on TL binaries that are most probably not 64-bit.
well, I think we can provide more option to the users... since luatex have been converted to C completely, so no web2c is involved (that is, no yacc and bison anymore....) and now it might be possible to - build luatex using Visual Studio - build under mingw on Windows, (not cross compile) - build on various machine using llvm-clang (clang is the future compiler for Mac OS X, FreeBSD and many other systems. clang compiles faster, generates better code, and it's free under uiuc license (better than gpl). GCC might be dropped out of the base system completely in FreeBSD 9.0)
Mojca
_______________________________________________ Mailing list: https://launchpad.net/~context Post to : context@lists.launchpad.net Unsubscribe : https://launchpad.net/~context More help : https://help.launchpad.net/ListHelp
Yue Wang