“dbcli” is an abbreviation that stands for a database query tool run via a command-line interface.
The tool is very useful when you prepared a new graph database and want to traverse the graph to identify configurations of your technical system (which could be of any nature, not necessarily cluster supercomputers) and calculate technical and economic characteristics of each configuration.
In our framework, graph databases are used to describe configurations of (a) cluster compute nodes, (b) network switches, and (c) UPS systems. You can use these databases to try how “dbcli” works.
Keep in mind that XML files referenced using the “include” directive are sought for by the “dbcli” tool in the same directory as the main file. Therefore, change your current directory to the one where XML files are located, and then run “dbcli” by specifying a path to it (if it is not on your path).
Example 1. The following command will produce CSV output for 264 configurations of “Hewlett-Packard” hardware used as the reference input in our framework:
cd clusterdesign ..\webserverhome\cgi-bin\dbcli\dbcli.exe -i hp.xml
Example 2. Let us impose some constraints. We will select configurations where the number of cores on a CPU is equal to exactly 8. To achieve this, we specify two constraints (with a “-c” switch), separated by a comma. We then sort the list by the value of metric “node_peak_performance” (“-s” switch), in descending order (“-r” switch). This way, the configuration with the biggest peak performance will be the first in the list. We then print the first configuration in “characteristic=value” pairs (“-1” switch). (Remember to put the entire command on a single line; it’s wrapped here for readability).
..\webserverhome\cgi-bin\dbcli\dbcli -i hp.xml -c "min_cpu_cores=8, max_cpu_cores=8" -s "node_peak_performance" -r -1 cpu_acp=80 cpu_codename=Interlagos cpu_cores=8 cpu_feature_size=32e-9 cpu_flops_per_cycle=4 cpu_frequency=3 cpu_l3_cache=16 cpu_model=AMD Opteron 6220 cpu_tdp=115 cpu_vendor=AMD enabled=True enclosure_size=10 main_memory_layout_per_cpu=4x8GB main_memory_low_voltage= main_memory_registers=registered main_memory_speed=12800 main_memory_type=PC3 network_tech=10GbE InfiniBand-4X-QDR node_cost=5996 node_cpu_count=2 node_equipment_size=0.625 node_form_factor=HP Blade node_free_dimm_count=8 node_infiniband_port_count=2 node_main_memory_per_core=4 node_main_memory_size=64 node_model=HP BL465c G7 node_peak_performance=192 node_power=329 node_ten_gigabit_port_count=2 node_vendor=HP node_weight=6