Bug11327 - add optional cores_affinity definition to force cores<->GPU allocation
Merge request reports
Activity
added 1 commit
- a9388640 - [oar-prop] deal with case where the nodes were created without GPUs
assigned to @neyron
Je pense que c'est bon.
Le seul truc qui me chiffone c'est que gpu ≠ f(resource_id) et core ≠ f(resource_id) avec f(x)=x / N + C alors qu'on a cette propriété pour les autres clusters, par ex sur chifflot:
resource_id | cluster | host | cpu | gpu | core | cpuset | gpudevice -------------+----------+------------------------------+-----+-----+------+--------+----------- 2149 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1895 | 0 | 0 2150 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1896 | 2 | 0 2151 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1897 | 4 | 0 2152 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1898 | 6 | 0 2153 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1899 | 8 | 0 2154 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1900 | 10 | 0 2155 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1901 | 12 | 0 2156 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1902 | 14 | 0 2157 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1903 | 16 | 0 2158 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1904 | 18 | 0 2159 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1905 | 20 | 0 2160 | chifflot | chifflot-1.lille.grid5000.fr | 525 | 17 | 1906 | 22 | 0 2161 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1907 | 1 | 1 2162 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1908 | 3 | 1 2163 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1909 | 5 | 1 2164 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1910 | 7 | 1 2165 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1911 | 9 | 1 2166 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1912 | 11 | 1 2167 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1913 | 13 | 1 2168 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1914 | 15 | 1 2169 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1915 | 17 | 1 2170 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1916 | 19 | 1 2171 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1917 | 21 | 1 2172 | chifflot | chifflot-1.lille.grid5000.fr | 526 | 18 | 1918 | 23 | 1 2173 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1919 | 0 | 0 2174 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1920 | 2 | 0 2175 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1921 | 4 | 0 2176 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1922 | 6 | 0 2177 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1923 | 8 | 0 2178 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1924 | 10 | 0 2179 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1925 | 12 | 0 2180 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1926 | 14 | 0 2181 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1927 | 16 | 0 2182 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1928 | 18 | 0 2183 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1929 | 20 | 0 2184 | chifflot | chifflot-2.lille.grid5000.fr | 527 | 19 | 1930 | 22 | 0 2185 | chifflot | chifflot-2.lille.grid5000.fr | 528 | 20 | 1931 | 1 | 1 2186 | chifflot | chifflot-2.lille.grid5000.fr | 528 | 20 | 1932 | 3 | 1 2187 | chifflot | chifflot-2.lille.grid5000.fr | 528 | 20 | 1933 | 5 | 1 2188 | chifflot | chifflot-2.lille.grid5000.fr | 528 | 20 | 1934 | 7 | 1 2189 | chifflot | chifflot-2.lille.grid5000.fr | 528 | 20 | 1935 | 9 | 1 2190 | chifflot | chifflot-2.lille.grid5000.fr | 528 | 20 | 1936 | 11 | 1 ...
vs !68 (diffs)
Il ne faudra donc pas chercher a afficher les ressources ordonnées par resource_id (cle autoincrementée de la table) et s'attendre a voir le meme genre de choses sur grue que sur les autres clusters.
Comme ca ne pose aucun soucis à OAR et drawgantt-svg, du coup
.Edited by Pierre NeyronOui effectivement c'est ok pour les cpu et core, j'ai mal regardé. Pour les gpu, ils pourraient etre definis comme f(resource_id) = (resource_id - r0) / 8 + g0, fonction croissante, en positionnant en dernier les cpuset:
resource_id | cluster | host | cpu | gpu | core | cpuset | gpudevice -------------+---------+--------------------------+------+-----+-------+--------+----------- 12215 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10967 | 0 | 0 12216 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10968 | 8 | 0 12217 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10969 | 16 | 0 12218 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10970 | 24 | 0 12219 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10971 | 4 | 0 12220 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10972 | 12 | 0 12221 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10973 | 20 | 0 12222 | grue | grue-1.nancy.grid5000.fr | 1765 | 105 | 10974 | 28 | 0 12223 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10975 | 2 | 1 12224 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10976 | 10 | 1 12225 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10977 | 18 | 1 12226 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10978 | 26 | 1 12227 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10979 | 6 | 1 12228 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10980 | 14 | 1 12229 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10981 | 22 | 1 12230 | grue | grue-1.nancy.grid5000.fr | 1765 | 106 | 10982 | 30 | 1 12231 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10983 | 1 | 2 12232 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10984 | 9 | 2 12233 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10985 | 17 | 2 12234 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10986 | 25 | 2 12235 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10987 | 3 | 2 12236 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10988 | 11 | 2 12237 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10989 | 19 | 2 12238 | grue | grue-1.nancy.grid5000.fr | 1766 | 107 | 10990 | 27 | 2 12239 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10991 | 5 | 3 12240 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10992 | 13 | 3 12241 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10993 | 21 | 3 12242 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10994 | 29 | 3 12243 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10995 | 7 | 3 12244 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10996 | 15 | 3 12245 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10997 | 23 | 3 12246 | grue | grue-1.nancy.grid5000.fr | 1766 | 108 | 10998 | 31 | 3
Ca serait plus proche de ce qu'on fait pour les autres clusters il me semble, mais ce que tu as fait est suffisant je pense.
actuellement on a les cpuset croissants à l'intérieur d'un cpu (comme pour tous les clusters en "round-robin"). on peut:
- laisser comme actuellement
- mettre les cpuset dans l'ordre physique (mais on aura pas les gpu croissants)
- mettre les gpu croissants (mais les cpuset seront dans un ordre dépendant des numanodes)
mais bon la solution actuelle est pas plus mauvaise que les autres
added 28 commits
-
a9388640...a26c7e9b - 11 commits from branch
master
- 1d1f7595 - [gen/oar-prop] get rid of cpu_index0 variable
- f81c806c - [oar-prop] get rid of core_index0 variable
- a7df45f4 - [oar-prop] get rid of cpuset variable
- 14e162da - [oar-prop] simplify code
- a73cc943 - [oar-prop] simplify computation of number of gpus
- 278a7300 - [oar-prop] add exception message and backtrace before exiting
- d14930ea - [oar-prop] simplify assignment of local_id
- f90cd313 - [oar-prop] move code about gpus in a single place to facilitate editing
- cc4e71e7 - [oar-prop] code simplification
- a6aaa770 - [oar-prop] remove pre-computation of GPU local id
- c4599e29 - [oar-prop] remove dead code
- caa7ffe7 - [spec] move helpers to spec_helper
- ac4cfb7d - [oar-prop] Add support for cores_affinity key in GPU definition
- a3ed5368 - [input/grue] Add cores_affinity for all GPUs
- d203034a - [spec] add more tests based on real clusters
- 4854df1b - [oar-prop] deal with case where the nodes were created without GPUs
- 1f76ca16 - Regenerate data
Toggle commit list-
a9388640...a26c7e9b - 11 commits from branch
enabled an automatic merge when the pipeline for 1f76ca16 succeeds
enabled an automatic merge when the pipeline for 5bbac7d3 succeeds
mentioned in commit 14a396e8