Examlex

Solved

Consider a Multi-Core Processor with 64 Cores Where First Shared \bullet

question 6

Essay

Consider a multi-core processor with 64 cores where first shared cache is at level L3 (L1 and L2 are private to each core). Suppose an application needs to compute the sum of all the nodes in a perfectly balanced binary tree T (A tree where every node has either two or zero children and all the leaves are at the same depth/level). Assuming that an add operation takes 10 units of time, the total sum can be computed sequentially, in time 10*n units, ignoring the time to load and traverse links in the tree (assume they are factored in the add). Here n is the number of nodes in T. One way to compute the sum in a parallel manner is to have two arrays of length 64: (a) an input array having the roots of 64 leaf subtrees (b) an output array that holds the partial sums computed for the 64 leaf subtrees for each core. Both the arrays are indexed by the id (0 to 63) of the core that is responsible for that entry. Furthermore, assume the following:
\bullet The input arrays are already filled in with the roots of the leaf subtrees and are in the L1 caches of each core.
\bullet Core 0 is responsible for handling the internal nodes that are not a part of any of the 64 subtrees. It is also responsible for computing the final sum once the partial sums are filled in.
\bullet Every time a partial sum is filled in the output array by a core, another core can fill in its partial sum only after a minimum delay of 50 units (due to cache invalidations).
In order to achieve a speedup of greater than 2 (over sequential code), what is the minimum number of nodes that should be present in the tree?


Definitions:

Open Membership

A policy that allows anyone who meets certain criteria to join or participate in an organization without restrictions.

Alcoholics Anonymous

A worldwide fellowship of individuals who share their experience, strength, and hope with each other to solve their common problem of alcoholism.

Structure

The arrangement or organization of elements within a system, providing a framework or order.

Group Cohesion

The sense of solidarity, unity, and togetherness experienced within a group, contributing to its members working effectively towards a common goal.

Related Questions