Các ứng dụng được chạy đồng thời trên tất cả các máy tính chín. Còn lạithời gian, các ứng dụng đã phải chạy trên một máy tính duy nhất.a. tính toán speedup hiệu quả với điều kiện nói trên sođể thực hiện chương trình trên một máy tính duy nhất. Cũng tính toán một, các tỷ lệ phần trăm củaMã số đã được parallelized (lập trình hoặc biên soạn để sử dụng cụmchế độ) trong chương trình trước.sinh giả sử rằng chúng tôi có thể có hiệu quả sử dụng 17 máy tính chứ không phải là 9 máy tínhtrên phần parallelized của các mã. Tính toán tăng tốc hiệu quả mà làđạt được.17,15 chương trình FORTRAN sau này được thực hiện trên một máy tính, và song songPhiên bản là để được thực hiện trên một cụm máy tính 32.L1: LÀM 10 I = 1, 1024L2: SUM(I) = 0L3: DO 20 J = 1, TÔIL4: 20 SUM(I) = SUM(I) + IL5: 10 TIẾP TỤCGiả sử dòng 2 và 4 mỗi mất hai chu kỳ máy thời gian, bao gồm tất cả các bộ xử lývà các hoạt động truy cập bộ nhớ. Bỏ qua chi phí do phần mềmvòng lặp kiểm soát báo cáo (dòng 1, 3, 5) và tất cả các hệ thống chi phí và tài nguyêncuộc xung đột.a. những gì là thời gian thực hiện tất cả (trong chu kỳ máy lần) của chương trình trên mộtMáy vi tính?sinh chia tôi vòng lặp đi lặp lại giữa các máy tính 32 như sau: 1 máy tính thực hiệnlặp đi lặp lại đầu tiên 32 (tôi = 1 đến 32), bộ xử lý 2 thực hiện lặp đi lặp lại tiếp theo 32,và như vậy. Thời gian thực hiện là gì và yếu tố speedup so vớiphần (một)? (Lưu ý rằng khối lượng công việc tính toán, quyết định bởi J-loop, là không cân bằngamong the computers.)c. Explain how to modify the parallelizing to facilitate a balanced parallel executionof all the computational workload over 32 computers. By a balanced load is meantan equal number of additions assigned to each computer with respect to bothloops.d. What is the minimum execution time resulting from the parallel execution on32 computers? What is the resulting speedup over a single computer?17.16 Consider the following two versions of a program to add two vectors:L1: DO 10 I = 1, N DOALL K = 1, ML2: A(I) = B(I) + C(I) DO 10 I = L(K - 1) + 1, KLL3: 10 CONTINUE A(I) = B(I) + C(I)L4: SUM = 0 10 CONTINUEL5: DO 20 J = 1, N SUM(K) = 0L6: SUM = SUM + A(J) DO 20 J = 1, LL7: 20 CONTINUE SUM(K) = SUM(K) + A(L(K - 1) + J)20 CONTINUEENDALLa. The program on the left executes on a uniprocessor. Suppose each line of codeL2, L4, and L6 takes one processor clock cycle to execute. For simplicity, ignorethe time required for the other lines of code. Initially all arrays are already loadedin main memory and the short program fragment is in the instruction cache. Howmany clock cycles are required to execute this program?17.9 / KEY TERMS, REVIEW QUESTIONS, AND PROBLEMS 663b. The program on the right is written to execute on a multiprocessor with M processors.We partition the looping operations into M sections with L = N>M elementsper section. DOALL declares that all M sections are executed in parallel. Thekết quả của chương trình này là để sản xuất M một phần tiền. Giả sử rằng chu kỳ đồng hồ k làcần thiết cho mỗi chiến dịch interprocessor truyền thông qua bộ nhớ dùng chungvà rằng do đó bổ sung mỗi tổng một phần đòi hỏi k chu kỳ. Độ lnhị phân adder cây có thể hợp nhất tất cả các khoản tiền một phần, nơi l = log2M. Bao nhiêuchu kỳ là cần thiết để sản xuất tổng cuối cùng?c. giả sử N = 220 phần tử trong mảng và M = 256. Speedup là gìđạt được bằng cách sử dụng sự? Giả sử k = 200. Đây là những gì tỷ lệ phần trămcủa speedup lý thuyết của một yếu tố của 256?
đang được dịch, vui lòng đợi..
