Topology configuration

This topic describes DaCS topology configuration.

The topology configuration file /etc/dacs_topology.config is only used by the host daemon service. Back up this file before changing it. Changes will not take effect until the daemon is restarted.

The host DaCS daemon might stop if there is a configuration error in the dacs_topology.config file. Check the log file specified by the dacsd.conf file (default is /var/log/hdacsd.log) for configuration errors.

The topology configuration file identifies the hosts and accelerators and their relationship to one another. The host can contain more than one CPU core, for example a Ridgeback contains four cores. The host can be attached to one or more accelerators, for example to a Cell BE BladeCenter®. The topology configuration file allows you to specify a number of configurations for this hardware. For example, it can be configured such that each core is assigned one Cell Broadband Engine or it might be configured so that each core can reserve any (or all) of the Cell Broadband Engines.

The default topology configuration file is for a host that has four cores and is attached to a single Cell BE BladeCenter:
<DaCS_Topology version="1.0">
  <hardware>
    <de tag="OB1" type="DACS_DE_SYSTEMX" ip="192.168.1.100">
      <de tag="OC1" type="DACS_DE_SYSTEMX_CORE"></de>   
      <de tag="OC2" type="DACS_DE_SYSTEMX_CORE"></de>
      <de tag="OC3" type="DACS_DE_SYSTEMX_CORE"></de>
      <de tag="OC4" type="DACS_DE_SYSTEMX_CORE"></de>
    </de>
    <de tag="CB1" type="DACS_DE_CELLBLADE" ip="192.168.1.101">
      <de tag="CBE11" type="DACS_DE_CBE"></de>
      <de tag="CBE12" type="DACS_DE_CBE"></de>
    </de>
  </hardware>
  <topology>
    <canreserve he="OC1" ae="CB1"/>
    <canreserve he="OC2" ae="CB1"/>
    <canreserve he="OC3" ae="CB1"/>
    <canreserve he="OC4" ae="CB1"/>
  </topology>
</DaCS_Topology>

The <hardware> section identifies the host system with its four cores (OC1-OC4) and the Cell BE BladeCenter (CB1) with its two Cell Broadband Engines (CBE11 and CBE12).

The <topology> section identifies what each core (host) can use as an accelerator. In this example, each core can reserve and use either the entire Cell BE BladeCenter (CB1) or one or more of the Cell Broadband Engines on the BladeCenter. The ability to use the Cell BE is implicit in the <canreserve> element. This element has an attribute only which defaults to false. When it is set to true, only the Cell BE BladeCenter can be reserved. If the fourth <canreserve> element was changed to <canreserve he="OC4" ae="CB1" only="TRUE"></canreserve>, then OC4 can only reserve the Cell BE BladeCenter. The usage can be made more restrictive by being more specific in the <canreserve> element. If the fourth <canreserve> element is changed to <canreserve he="OC4" ae="CBE12"></canreserve>, then OC4 can only reserve CBE12 and can not reserve the Cell BE BladeCenter.

Modify the topology configuration file to match your hardware configuration. Make a copy of the configuration file before changing it. At a minimum, you must update the IP addresses of the ip attributes to match the interfaces between the host and the accelerator. You might need to add additional entries if you have a second BladeCenter. The following is an example of the topology configuration file changed to have valid IP addresses and to add a second BladeCenter:
<DaCS_Topology version="1.0">
  <hardware>
    <de tag="OB1" type="DACS_DE_SYSTEMX" ip="192.168.1.100">
      <de tag="OC1" type="DACS_DE_SYSTEMX_CORE"></de>   
      <de tag="OC2" type="DACS_DE_SYSTEMX_CORE"></de>
      <de tag="OC3" type="DACS_DE_SYSTEMX_CORE"></de>
      <de tag="OC4" type="DACS_DE_SYSTEMX_CORE"></de>
    </de>
    <de tag="CB1" type="DACS_DE_CELLBLADE" ip="192.168.1.101">
      <de tag="CBE11" type="DACS_DE_CBE"></de>
      <de tag="CBE12" type="DACS_DE_CBE"></de>
    </de>
    <de tag="CB2" type="DACS_DE_CELLBLADE" ip="192.168.1.102">
      <de tag="CBE21" type="DACS_DE_CBE"></de>
      <de tag="CBE22" type="DACS_DE_CBE"></de>
    </de>
  </hardware>
  <topology>
    <canreserve he="OC1" ae="CB1"></canreserve>
    <canreserve he="OC1" ae="CB2"></canreserve>
    <canreserve he="OC2" ae="CB1"></canreserve>
    <canreserve he="OC2" ae="CB2"></canreserve>
    <canreserve he="OC3" ae="CB1"></canreserve>
    <canreserve he="OC3" ae="CB2"></canreserve>
    <canreserve he="OC4" ae="CB1"></canreserve>
    <canreserve he="OC4" ae="CB2"></canreserve>
  </topology>
</DaCS_Topology>