This is an old revision of the document!
Pentru parcurgerea demo-urilor, folosiți arhiva aferentă.
0-overhead/.process-overhead.c și thread-overhead.c.make pentru a obține executabilele process-overhead și thread-overhead./usr/bin/time -v ./process-overhead > /dev/null /usr/bin/time -v ./thread-overhead > /dev/null
1-process_thread/.process.c și thread.c.thread.c) sau dintr-un proces nou (process.c).make pentru a obține executabilele thread și process../thread ./process
data_var, afișată prin rularea celor două executabile.2-list/.thread-list-app.c și list.c.USE_MUTEX?Makefile și urmăriți definirea macro-ului USE_MUTEX.make pentru a obține executabilele thread-list-app și thread-list-app-mutex.thread-list-app de mai multe ori, până obțineți eroare.NUM_THREADS și NUM_ROUNDS la alte valori (probabil mai mari), recompilați folosind make și apoi rulați thread-list-app.thread-list-app-mutex de mai multe ori.time (e relevant timpul obținut pentru rulare cu succes):time ./thread-list-app time ./thread-list-app-mutex
sys în output-ul time) este mai mare în cazul folosirii thread-list-app-mutex?3-spin/.spin.c.USE_SPINLOCK.Makefile.USE_SPINLOCK.make pentru a obține două executabile: spin și mutex.time pentru a contabiliza timpul de rulare:time ./spin time ./mutex
./spin nu petrece foarte mult în kernel space (system time – sys în output-ul time)?4-granularity/.granularity.c.GRANULARITY_….make; veți obține executabilul granularity.time ./granularity
GRANULARITY_TYPE la valoarea GRANULARITY_COURSE.time ./granularity