Demo-urile se găsesc în repository. Pentru a clona și accesa repository-ul folosiți comenzile:
git clone https://github.com/iocla/demo iocla-demo.git cd iocla-demo.git/
Apoi accesați directorul curs-16/
sau curs-17/
folosind, respectiv, în directorul repository-ului (iocla-demo.git/
) comenzile:
cd curs-16/ cd curs-17/
Acum putem parcurge secțiunile cu demo-uri de mai jos.
cat /proc/cpuinfo | grep Hz
În directorul curs-16/
rulăm:
make
: pentru compilarea executabilelor./test_freq
: estimează frecvența procesorului folosind registrul TSC pentru sleep(1)./test_rdtsc
: în bucla rep trebuie încercate diverse combinații de instrucțiuni. Programul afișează numărul de instrucțiuni din buclă și numărul de cicli folositi.
./test_sse
se compară viteza de execuție cu operații SSE cu prelucrarea clasică octet cu octet
./lock
Cum arată inline assembly? Cu C++
Cum arată un “race condition”?
Instrucțiunile nu sunt atomice!
Prefixul lock.