-
Notifications
You must be signed in to change notification settings - Fork 184
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
README.md: added performance options (resolves #25) #27
Conversation
I'm not sure that we should recommend thumb2, afaik nobody uses it and it's performance gain is uncertain. |
thumb2 is for old CPU where flash size has to be saved. but it's no more used these days. About hardfloat support, Raoul point me recently that it's enabled by default in meta-fsl-arm for i.mx6 processor [1]. So i finally don't see why we could not enabled it by default ! What you think ? [1] https://github.com/Freescale/meta-fsl-arm/blob/master/conf/machine/include/imx-base.inc#L34 |
I didn't check but i suppose they force hf because they ship some hf-only binary blob (gpu, vpu...). So we should have a good reason to do that too: sensible performance gain or for example gpu binaries. @KristofRobot can you re-run your benchmarks switching just hard/soft float (without thumb or vfpv4)? |
Do you perhaps have some links/references that indicate that thumb2 is "not commonly used"? I am no expert on this, but if I google for thumb2, it seems like a good idea to activate it - see [1], [2], [3]. [1] http://www.cs.uiuc.edu/class/fa05/cs433ug/PROCESSORS/Thumb2.pdf |
Sure, will try to compare |
Just updated #25 with that comparison. In fact there is no difference (at least not with linpackc). Seems that without |
As explained in #25, there is now a patch in oe-core to support vfpv4 specific tuning options. I'll update this pull request to reflect that, recommending to use Any further input on the thumb discussion? In my simple performance tests I did not see any significant difference between thumb or no thumb - but googling it, activating thumb2 seems to make sense (see links posted above) - so I'd propose to recommend it, unless someone can point to some references that suggest that it is indeed not used/useful. Or other comments? Thanks! |
For what i know Thumb2 is 16/32 bits instructions set of arm. It's only In my point of view, the neon instruction set is much more interresting Regarding the links you post, i don't see where is the performance I guess that you should ask your question on the linux sunxi mailing list 2014-02-03 KristofRobot notifications@github.com:
Nicolas Aguirre |
Thanks for the answer. In the meantime I found two additional references, one from ARM, suggesting that thumb2 comes with a 2% performance loss, but 26% space gain - [1]. Another post suggesting that But I think popping the question to the linux-sunxi mailing list is a great suggestion, will do that. And yes, I fully agree that the neon-vfpv4 optimization is the significant one - but while I'm at it, I figured I could as well try to come up with a sensible thumb recommendation ;) Thanks! Kristof [1] http://elinux.org/images/8/8a/Experiment_with_Linux_and_ARM_Thumb-2_ISA.pdf |
i never saw thumb enabled in other big projects so i'd start recommending cortexa7hf-neon-vfpv4, if we find some useful cases where thumb2 really makes sense we can always update it. |
Agreed - I updated my pull request along those lines (removing the thumb2 part). Let me know if any other comments. |
README.md: added performance options (resolves #25)
I propose to update the README.md with recommended performance options.