Answered step by step
Verified Expert Solution
Question
1 Approved Answer
The time to do a single thing is its latency.Parallelism speeds total work done by doing multiple things at thesame time - that is ,
The time to do a single thing is its latency.Parallelism speeds total work done by doing multiple things at thesame time that is bandwidth. It is easy to combine tasks with different latencies by just scheduling one after another. Speeding up any one task speeds up the total subject to limitations from Amdahl's lawIf we combine multiple tasks by running them in parallel, thetotal time to do all of them is limited by the longest task goodspeedup from parallelism requires that all tasks take close to themsame time. Also, some tasks have dependencies that mean they needto be done in specific order. We have to know this is the case so we don't parallelize incorrectly this is not a problem for latencyimprovements if we just schedule everything in orderThings get more complicated when we have multiple stages that have to be done in order, but we want to speed up each stage through parallelism.The issue is: we have to match bandwidth. If we have a sequence ofactions in some order bandwidth how do we transfer to multipleconcurrent things? If the thing we are parallelizing is instructions,it is difficult to read them from memory in some order and then run themout of order we might not get any speedup because to run things in parallel we may need to halt some tasks so we can start a bunch together,which can easily result in overall slowdown, not speedup. If we havemultiple concurrent tasks, and need to reduce the bandwidth to onething at a time, we may need to halt some of them so we can releaseothers in sequence.If we increase bandwidth we have hardware to do more tasks in parallelthan the number of tasks, then we may be wasting hardware and power. If we reduce bandwidth then we have to halt some tasks because wedon't have the ability to run them all at once, but then we have to keeptrack of what we are halting so we can restart it later, and wehave a storage problem which may cause a crash. THE PROBLEM:Assume a CPU and memory as described in the textbook: section pg Intel I memory system section pg Intel I CPU core Assume : CPU: intel i core, MHz dinamic speedup to MHz depending on load RAM: DDR MHz on GB chips, latency cycles, bandwidth GBsec each chip. With hyper threading, this system supports concurrent threads.System resources and bandwidth usage depend on the kind ofprograms a system typically runs.Ch oose ONE of the following for your analysiscode: sciencecomputational code: memory reads, write every instructions working set Mbytecode: businessdata processing code memory reads, writes every instructions working set KbytesGiven the real hardware described here, and the code styleyou choose: Are there any bandwidth mismatches in executing a single thread on one core no hyper threading Consider memory bandwidthrequires, instruction decode and execution parallelism, changes whenCPU clock speed changes but memory speed is constant. Multiple processes Ideally since all CPU cores are the same,you should be able to run processes at the same speed as any singleprocess times the work in the same time.However you are sharing memory and maybe L cache. How manyprocesses can you actually run without some slowing? How much slowdown do you get with processes? YOUR TASK: For each of the above questions, what we want is a good approach In every case show the assumptions you make, the stepsyou take, and the reasoning behind your conclusions.If you think you need more information than the references from thebook and the information given in the problem, feel free to addwhat you need, but give verifiable references Not enough to sayyou got memory specifications for Crucial DDR chips, give me alink I can verify If you need to make any additional assumptions,state them at the start of your problem solution.Your answers should make sense If they don't, try to explain whyor figure out where the problem is example, identical processes on cores should take a little longer than the time of process on core,but if your analysis says they take times longer, you have madea mistake somewhere. If you think your answer is wrong, but you don'tknow why, say that you think it is wrong, it is worth at least partialcredit.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started