28.03.2012 12:55, Yves Blusseau написал: > Le 27/03/2012 22:04, davidMbrooke a écrit : >> Thanks Mike. I have now completed the document based on what was in my >> head. It now describes all the places where the build system has to be >> configured in order to add a custom toolchain (really only 3 places - >> some simple config settings in make/MasterInclude.mk, a custom patch for >> the Linux kernel .config and a custom uClibc .config). >> >> I have also started a Discussion page at the same location to track Q&A. >> >> david >> > Thanks david for the documentation. Just some questions: i have a > soekris net6501 board (with an Atom E6xx series processor). > If i take the "standard" configuration (|i486-unknown-linux-uclibc) > buildtoo.pl will use the parameters defined in ||make/MasterInclude.mk: > | > > ARCH:=i386 > KARCHS:=i686 i486 geode > KARCHS_PCIE:=i686 > ARCH_CFLAGS=-march=i486 -mtune=pentiumpro > > I think it's not optimal for my board (i don't have to compile for i486 and > mtune can be more specific). > > So my question: what is the best changes i need to do to have optimisation > for my board ? > I think i need a specific triplet name like atom-net6501-linux-uclibc ? > with in|make/MasterInclude.mk:| > > |else ifeq ($(GNU_TARGET_NAME),atom-net6501-linux-uclibc) > # Primary kernel architecture > export ARCH:=x86_64 > # Space-separated list of kernel sub-archs to generate > export KARCHS:=net6501| > export KARCHS_PCIE:=net6501 > |# Arch-specific CFLAGS > export ARCH_CFLAGS=-march=atom -mtune=atom > > is it right (like the |KARCHS_PCIE) |? > > This is just a use case to understand how we can change things for a > proper toolchain. > > Regards, > Yves > || > | ARCH_CFLAGS involves only userland libraries, kernel is compiled for selected arch - so you bother for 2-3% speedup of userland that is negligible. Tuning for specific arch instead of generic (pentium4 vs i686, atom vs x86_64, etc) will give just some % of speed-up. Also switching from i686 to x86_64 may cause performance drop (larger code will cause more frequent cache misses), and no performance boost at least on IPv4 (it operates with 32bit or less data).
And second, for host names there are standard names, you can't defune your own arch - libtool will not know it, and you'll have errors on compilation. So if you want to speed-up your box - it'll be enough to make kernel optimized for your box, and use it with generic userland for your architecture. ------------------------------------------------------------------------------ This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure _______________________________________________ leaf-devel mailing list leaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/leaf-devel