Hi,
As Stephen says, the ldap schema has GlueHostArchitectureSMPSize as an int
and rejects things if itıs not. If I recall by glue schema correctly it
should be the number of physical CPUs (not cores) in each node in your
homogeneous cluster. Since weıve only ever bought nodes with dual socket
motherboards I just hard coded it to ³2² and since itıs probably a number
that no-one has ever looked at, I would probably leave it a 2 even if we
started buying quad socket motherboards.
Yours,
Chris.
On 21/07/2015 09:44, "Testbed Support for GridPP member institutes on
behalf of Andrew Lahiff" <[log in to unmask] on behalf of
[log in to unmask]> wrote:
>Hi Chris,
>
>Why did you set GlueHostArchitectureSMPSize to 2 rather than $smpSize?
>Shouldn't this number be related to the number of cores on a host rather
>than the number of CEs?
>
>Note that I've found that if GlueHostArchitectureSMPSize is set to
>$smpSize and if $smpSize is a float (even something like 2.0), the CE
>completely stops publishing lots of things, e.g.
>GlueSubClusterPhysicalCPUs and GlueSubClusterLogicalCPUs. To get them
>back I had to add:
>
>$smpSize = int($smpSize);
>
>after the code that defines GlueSubClusterPhysicalCPUs and
>GlueSubClusterLogicalCPUs. I assume this is because
>GlueHostArchitectureSMPSize must be an integer, and things break if it's
>set to a float.
>
>Regards,
>Andrew.
>
>________________________________________
>From: Testbed Support for GridPP member institutes
>[[log in to unmask]] on behalf of Chris Brew
>[[log in to unmask]]
>Sent: Tuesday, June 16, 2015 12:13 PM
>To: [log in to unmask]
>Subject: Arc glue-generator.pl diff
>
>Hi All,
>
>Hereıs the diff of our current /usr/share/arc/glue-generator.pl from the
>version in ArcCE 4.2.0:
>
>So there are actually three or four hacks in here.
>
>The first the hard coding of the localse, though I think I finally got
>the correct format of that in the arc.conf file.
>
>The next two are rolled into the same changes, and involve calculating
>the subcluster logical and physical cpus from the total CPUs and the
>Cores number in the ProcessorOtherDescription element the first part of
>which changes the patch to accept floats for the smpSize not just ints,
>the second divides the Logical and Physical CPUs by a hardcoded number of
>ArcCEs (2 in our case).
>
>Finally we add the hard coded VOShares into the raw ldif in the heredoc.
>
>At some point Iıll convert this to a puppet template and at least the
>hardcoded numbers will cone from the config management.
>
>Yours,
>Chris.
>
>diff -u /usr/share/arc/glue-generator.pl.4.2.0
>/usr/share/arc/glue-generator.pl
>--- /usr/share/arc/glue-generator.pl.4.2.0 2014-10-15 11:02:26.000000000
>+0100
>+++ /usr/share/arc/glue-generator.pl 2014-10-16 11:33:22.000000000 +0100
>@@ -63,7 +63,7 @@
> 'nordugrid-cluster-homogeneity' => '',
> 'nordugrid-cluster-comment' => '',
> 'nordugrid-cluster-owner' => '',
>- 'nordugrid-cluster-localse' => '',
>+ 'nordugrid-cluster-localse' => 'srm://heplnx204.pp.rl.ac.uk',
> );
>
> #all these values will be checked if they are numeric only:
>@@ -176,15 +176,15 @@
>
>$glueHostArchitecturePlatformType=$cluster_attributes{'nordugrid-cluster-a
>rchitecture'};
> $glueSubClusterUniqueID=$cluster_attributes{'nordugrid-cluster-name'};
> $glueSubClusterName=$glue_site_unique_id;
>- if ( $processorOtherDesc =~ m/Cores=(\d+)/ ){
>+ if ( $processorOtherDesc =~ m/Cores=(\d+(\.\d)*)/ ){
> $smpSize=$1;
>-
>$glueSubClusterPhysicalCPUs=int($cluster_attributes{'nordugrid-cluster-tot
>alcpus'}/$smpSize);
>+
>$glueSubClusterPhysicalCPUs=int($cluster_attributes{'nordugrid-cluster-tot
>alcpus'}/($smpSize*2));
> }
> else {
> $smpSize=1;
>
>$glueSubClusterPhysicalCPUs=$cluster_attributes{'nordugrid-cluster-totalcp
>us'};
> }
>-
>$glueSubClusterLogicalCPUs=$cluster_attributes{'nordugrid-cluster-totalcpu
>s'};
>+
>$glueSubClusterLogicalCPUs=int($cluster_attributes{'nordugrid-cluster-tota
>lcpus'}/2);
> $glueClusterUniqueID=$cluster_attributes{'nordugrid-cluster-name'};
>
> WriteSubCluster();
>@@ -245,7 +245,7 @@
> print "GlueHostApplicationSoftwareRunTimeEnvironment: $_\n"
> }
>
>- print "GlueHostArchitectureSMPSize: $smpSize
>+ print "GlueHostArchitectureSMPSize: 2
> GlueHostNetworkAdapterInboundIP: $inbIP
> GlueHostNetworkAdapterOutboundIP: $outbIP";
>
>@@ -385,7 +385,8 @@
> $queue_attributes{$queue_attributes_num[$i]} = $DEFAULT;
> }
> }
>-
>+
>+ $queue_attributes{'nordugrid-queue-maxcputime'} = 259200;
>
> if ($cluster_attributes{'nordugrid-cluster-homogeneity'} =~
>/false/i){
>
>@@ -485,6 +486,10 @@
> GlueCEInfoGRAMVersion: $DEFAULT
> GlueCEInfoTotalCPUs: $queue_attributes{'nordugrid-queue-totalcpus'}
> GlueCECapability: CPUScalingReferenceSI00=$CPUSCALINGREFERENCESI00
>+GlueCECapability: Share=cms:46
>+GlueCECapability: Share=lhcb:17
>+GlueCECapability: Share=atlas:11
>+GlueCECapability: Share=other:2
> GlueCEInfoJobManager: arc
> GlueCEInfoContactString:
>$cluster_attributes{'nordugrid-cluster-contactstring'}?queue=$queue_attrib
>utes{'nordugrid-queue-name'}
> GlueInformationServiceURL:
>ldap://$cluster_attributes{'nordugrid-cluster-name'}:$BDIIPORT/mds-vo-name
>=resource,o=grid
|