Information Technology Reference
In-Depth Information
Because it is hard to build analytical equations involving those variables,
performing computer benchmarking via a computational model is therefore a
reasonable method to evaluate performance and characterize the architecture.
It is important to emphasize that the quality of a benchmarking tool should
not depend on particular architecture. This extra requirement is solved by dis-
covering the relations of the different cores within each level of cache.
3.2 MBSPDiscover Design
The existing benchmark BSPbench for the standard BSP model [1] was used as
a reference baseline to design the MBSPDiscover tool. The obvious difference
between the existing benchmark and the new one is the need of obtaining pairs
of values for the g and L parameters for each level of components in the Multi-
BSP model. In addition, in the MultiBSP case, the processing is made inside of
multicore nodes instead of outside nodes through the network.
Software Architecture and Modules. Fig. 3 shows the software architecture
for the kernel of the MBSPDiscover proposal. The functionality for each of the
processes displayed in the figure is explained below:
- Discovering module : the hardware architecture is collected by using hwloc
and it is loaded in a tree of resources. This structure is inside the hwloc API
box.
- Interface : Once the tree structure is generated, a set of functions walk across
the tree using a bottom-up process for building a new tree named MBSPTree
that contains all the information needed to support the MultiBSP model.
- Benchmarking module : It retrieves core indexes and memory size from the
MBSPTree for each level. Then it measures communication and synchroniza-
tion cost through a MultiBSP submodule, as well as an anity submodule
for pinning levels on the right cores. Finally it computes the resulting g and
L parameters.
1
MBSPTree = multibsp_discover()
2
3
foreach (level in MBSPTree) {
4
g,L = coreBenchmark (level)
5
}
Algorithm
1.1.
MBSPDiscover
pseudocode.
Fig. 3. Schematic view (left) and pseudocode (right) of the MBSPDiscover process
MBSPTree acts as the interface between both modules. Fig. 4 shows the struc-
ture corresponding to the hardware architecture presented in Fig. 5.
 
Search WWH ::




Custom Search