JP, a post by skidracer => Performance answers this question.
Basically, you'd just be calling the same code to do the same job so I can't understand how one could be faster than the other.
Most games I think in blitz3d will be spending 80%+ time calling either UpdateWorld or RenderWorld so optimizations from switching language of your project is going to be pretty hard to spot, unless you have something like a complex bb based verlet engine in your code which will get a good boost when ported to bmx.
The tweaking I did to improve rendering speed were based on benchmarking the clone army featured in the animtest (and the leading bug in blitz3d bug reports) where ATI cards were stalling on cloned b3d models and ATI and NVidia both showed significant performance boosts when primitives were grouped in an extra sorted list to minimize state changes when using multi surface .x type animated robots.
The tweaking I did to improve rendering speed were based on benchmarking the clone army featured in the animtest (and the leading bug in blitz3d bug reports) where ATI cards were stalling on cloned b3d models and ATI and NVidia both showed significant performance boosts when primitives were grouped in an extra sorted list to minimize state changes when using multi surface .x type animated robots.
Basically, you'd just be calling the same code to do the same job so I can't understand how one could be faster than the other.