Once upon a time, there were some people brave enough to try running Qtractor on the 64studio Linux distribution, a flavour specially targeted to the native AMD64 system architecture. Frank Neumann and Dave Phillips were among them.
[CORRECTION: Frank is on Ubuntu (Edgy Eft), not on 64studio]
The story they told was horrible, that Qtractor was crawling to death on their 64-bit boxes, right from the startup sequence. Symptoms were that the application just enters into some kind of Big Freeze, reaching 100%cpu usage, which indicates a severe tight loop was occuring. Thanks to Frank Neumann, which was even bravest to get it traced through gdb and narrowed the spot right down to some broken atomic primitive implementation, namely ATOMIC_CAS (compare-and-swap), that was the culprit.
Fact is, I don't have a x86_64 system any near me, for me to test and verify bare run-time correctness of my own code on any other platform than the now aging x86 (32-bit). Truth also is I've been negleting the upgrade for reasons myself cannot compreend. Maybe I've just stayed with the Intel crowd for much too long now. Fortunately, Frank just helped me on throwing shots in the dark, blindly sending daily patches for which him kindly tested, until we got one through in relief.
So it was all due to my own depraved assumptions between pointer address and integer operand distinction, while doing some embedded assembly code, which was being brain-deadly pasted in the first place. It worked flawlessly on x86_32, but failed miserably on x86_64. I'm almost sure that it has been terribly broken on the 64-bit arena for quite some time now. Not anymore, or so I like to believe.
As of today, initial brute-force fix to this 64-bit horror has been already commited to CVS, giving as sane version numbers the ones starting from 0.0.1.580, inclusive. Qtractor is now unleashed to run on the 64-bit age.
[UPDATE: qtractor 0.0.1.852 has been tagged and a preview tarball attached]
Enjoy.
Add new comment