On Jun 18, 2007, at 3:32 PM, Ben Harris wrote:
In article <9BCD26A4-4861-46EE-8FF8-A5DEDDCA0405%invisible.ca@localhost> you write:On 18-Jun-07, at 8:16 AM, Pawel Jakub Dawidek wrote:I'd suggest correctness verification. ~15GB/s seems to be waaaay too fast:)You're right, the results vary greatly from run to run. I've seen numbers considerably lower than this as well as numbers considerably higher. Not exactly sure why, maybe openssl has the timing wrong -- it claims that it's running for 3s on n size blocks, but then later claims that it only ran for a fraction of that period of time, ie:I haven't checked the code, but my guess would be that 'openssl speed' runs for 3s of real time, but then checks the amount of CPU time it's used. Since the CPU is idle waiting for the result from theaccelerator, the CPU time is roughly zero, hence the ludicrous numbers.
That said, my examination of the code revealed a busy-wait in the glxsb driver waiting for the AES operation to complete, which includes a bus_space_read_4() in the tight (without delay) loop.
Seems like that ought to use a callout instead. -- thorpej