Project3 - CS6290 High-Performance Computer Architecture...

Info iconThis preview shows pages 1–5. Sign up to view the full content.

View Full Document Right Arrow Icon
CS6290 High-Performance Computer Architecture Project 3 GT-KU GTID : 902520890 Sang Hyun Kim
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Part 1 : Many-core execution of a parallel application A) What are the execution times (one the simulated many-core machine) for these seven runs? Answer msec Number of Cores 1 2 4 8 16 32 64 Sim Time 0.609 0.517 0.518 0.524 0.539 0.552 0.588 B) What is the overall parallel speedup obtained in each of the runs that uses more than one core (thread)? What is the parallel efficiency (speedup divided by the number of cores used)? Answer with 2 threads Speedup ൌ 0.609 0.517 ૚. ૚ૠૠૢ Parallel EfFiciency ൌ speedup number of threads 1.1779 2 ൗൌ ૙. ૞ૡૢ૙ with 4 threads Speedup ൌ 0.609 0.518 ૚. ૚ૠ૞ૠ Parallel EfFiciency ൌ speedup number of threads 1.1757 4 ૙. ૛ૢ૜ૢ with 8 threads Speedup ൌ 0.609 0.524 ૚. ૚૟૛૛ Parallel EfFiciency ൌ speedup number of threads 1.1622 8 ૙. ૚૝૞૜ with 16 threads Speedup ൌ 0.609 0.539 ૚. ૚૛ૢૢ Parallel EfFiciency ൌ speedup number of threads 1.1299 16 ૙. ૙ૠ૙૟ with 32 threads Speedup ൌ 0.609 0.552 ૚. ૚૙૜૜ Parallel EfFiciency ൌ speedup number of threads 1.1032 32 ૙. ૙૜૝૞
Background image of page 2
with 64 threads Speedup ൌ 0.609 0.588 ૚. ૙૜૞ૠ Parallel EfFiciency ൌ speedup number of threads 1.0357 64 ૙. ૙૚૟૛ C) Explain why the results for A) and B) are not as one might hope for? What do you think the reasons for this are? Answer As more cores are used, speedup decreased almost logarithmically and parallel efficiency went down exponentially. This result was not expected because normally, we think as the numbers of cores are increased speedup also will be increased linearly or perhaps not exactly but almost. This problem originated 1.1779 1.1757 1.1622 1.1299 1.1033 1.0357 0.9500 1.0000 1.0500 1.1000 1.1500 1.2000 2 4 8 16 32 64 Number of Cores Speedup Speedup 0.5890 0.2939 0.1453 0.0706 0.0345 0.0162 0.0000 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 248 1 6 3 2 6 4 Parallel Efficiency Parallel Efficiency
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
from one of the well known concurrent programming difficulty: Taking too many locks It is easy to take too many locks and thereby inhibit concurrency (at best) or cause deadlock (at worst). Game of life has some work can be done in parallel but it was not a difficult job that is just setting a flag in array. So there was not much parallel efficiency achieved from concurrent programming. Rather it took longer when there were more cores because of locks and barriers inside the code. These locks made threads work inefficiently waiting to acquire locks. Moreover barriers made threads work synchronize waiting for other threads to catch up for synchonization Also there will be much more cache coherence misses happened as more cores are used as we’ve check from last project. Inside the program, there is a code that accesses array once every some iteration. Even
Background image of page 4
Image of page 5
This is the end of the preview. Sign up to access the rest of the document.

This note was uploaded on 04/12/2010 for the course CS 6290 taught by Professor Staff during the Spring '08 term at Georgia Tech.

Page1 / 11

Project3 - CS6290 High-Performance Computer Architecture...

This preview shows document pages 1 - 5. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online