PC Lab 1: Diferență între versiuni
De la WikiLabs
Jump to navigationJump to search
Cbira (discuție | contribuții) Fără descriere a modificării |
Cbira (discuție | contribuții) Fără descriere a modificării |
||
Linia 11: | Linia 11: | ||
loop unrolling | loop unrolling | ||
optimizing variables into registers | |||
bit-tricks 500 ms | |||
256-entry 8-bit table of 1 KB | 256-entry 8-bit table of 1 KB ~ 400 ms | ||
16-bit table of 64 k entries (256 KB) | 16-bit table of 64 k entries (256 KB) ~ 200 ms | ||
32-bit table of 4 G entries (16 GB) | 32-bit table of 4 G entries (16 GB) ~ 66 ms |
Versiunea de la data 7 martie 2018 22:55
Session 1, x86 optimization:
C/C++: increase the execution speed for the code that reverses the order of the bits composing a 100 M esantioane of unsigned 32-bit (eg. 10111...11 -> 11..11101)
Expected/Presented techniques:
first implementation ~ 10 seconds
compiler optimized ~ 5 seconds
loop unrolling
optimizing variables into registers
bit-tricks 500 ms
256-entry 8-bit table of 1 KB ~ 400 ms
16-bit table of 64 k entries (256 KB) ~ 200 ms
32-bit table of 4 G entries (16 GB) ~ 66 ms