Is PSPSDK/libs getting slower?

Discuss the development of new homebrew software, tools and libraries.

Moderators: cheriff, TyRaNiD

Post Reply
deniska
Posts: 71
Joined: Mon Oct 17, 2005 1:38 pm
Location: New York

Is PSPSDK/libs getting slower?

Post by deniska »

While moving some of my projects from old cygwin box to the tiny, ubuntu-powered asus-eee I noticed some weird stuff: Apparently the same project, compiled with "fresh" sdk/libs yields ~ 30% slower executables.
I am not sure if this has anything to do with platforms or sdk/libs versions..
(the cygwin box has ~ 1 year old version of the sdk and the libs)

Does anyone have any ideas?

In case anyone wants to investigate, the link below has the source to opentyrian sdl port, which seems to "prefer" to be built under 1 year old cygwin-based sdk rather than fresh ubuntu-powered toolchain:
http://www.dcemu.co.uk/vbulletin/showth ... 87&page=10
jimparis
Posts: 1145
Joined: Fri Jun 10, 2005 4:21 am
Location: Boston

Post by jimparis »

Well, of course nobody slowed things down on purpose. It's most likely that a minor change in compiler or stack layout is causing slight differences in caching behavior... ie. moving things around slightly can affect performance pretty badly depending on your code, becuase you'll get different access patterns in the icache and dcache and those can affect performance pretty badly. I guess you could profile it to try to pinpoint it further.
deniska
Posts: 71
Joined: Mon Oct 17, 2005 1:38 pm
Location: New York

Post by deniska »

Well, the beauty of using frameworks like SDL or lua is that you don't have to worry too much about caching patterns and other low level stuff of this sort..

perhaps, there is a need for a benchmark program, which is bundled with the toolchain or particular libraries...
IronAvatar
Posts: 23
Joined: Sat Nov 25, 2006 5:53 am

Post by IronAvatar »

deniska wrote:Well, the beauty of using frameworks like SDL or lua is that you don't have to worry too much about caching patterns and other low level stuff of this sort..

perhaps, there is a need for a benchmark program, which is bundled with the toolchain or particular libraries...
Actually. with something like LUA, the cache is probably being thrashed all to hell anyhow, so it probably doesn't matter how you organise you code or data.

And SDL doesn't somehow magicaly remove the need to be carefull how you data is organised either.
Art
Posts: 642
Joined: Wed Nov 09, 2005 8:01 am

Post by Art »

If you're using the real time clock you can add microseconds everywhere it
isn't used, and you have a one millionth of a second timer still independent of your program, so it can run benchmarks itself.

It might be useful if you troubleshoot a particular library that you can swap with an older version.
I have had a similar problem for nearly a year now that requires me to keep
two environments set up, in that the output of this algo:
http://personal.inet.fi/cool/jjlammi/rscalc.c
becomes incorrect when compiled with a toolchain version that is too late.
Could be maths.c, but too lazy to try swapping anything.
If not actually, then potentially.
Post Reply