Jak sprawdzić, czy OpenMP działa?

Próbuję uruchomić LIBSVM w trybie równoległym, jednak moje pytanie jest ogólnie w OpenMP. WedługLIBSVM FAQ, Zmodyfikowałem kod za pomocą wywołań #pragma, aby używać OpenMP. Zmodyfikowałem również plik Makefile (dla un * x), dodając argument -fopenmp, aby stał się:

<code>CFLAGS = -Wall -Wconversion -O3 -fPIC -fopenmp
</code>

Kod dobrze się kompiluje. Sprawdzam (ponieważ nie jest to mój komputer), czy OpenMP jest instalowany przez:

<code>/sbin/ldconfig -p | grep gomp
</code>

i zobacz, że jest - prawdopodobnie - zainstalowany:

<code> libgomp.so.1 (libc6,x86-64) => /usr/lib64/libgomp.so.1
 libgomp.so.1 (libc6) => /usr/lib/libgomp.so.1
</code>

Teraz; kiedy uruchamiam program, nie widzę żadnych poprawek prędkości. Również, gdy sprawdzam za pomocą „top”, proces używa co najwyżej% 100 CPU (jest 8 rdzeni), również nie ma wąskiego gardła procesora (tylko jeden dodatkowy użytkownik z% 100 użycia procesora), spodziewałem się zobaczyć więcej niż % 100 (lub inny wskaźnik), że proces używa wielu rdzeni.

Czy istnieje sposób sprawdzenia, czy działa on z wieloma rdzeniami?

questionAnswers(2)

yourAnswerToTheQuestion