<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://lcg.in2p3.fr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Khalfa</id>
	<title>lcgwiki - Contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://lcg.in2p3.fr/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Khalfa"/>
	<link rel="alternate" type="text/html" href="https://lcg.in2p3.fr/Special:Contributions/Khalfa"/>
	<updated>2026-05-05T14:32:44Z</updated>
	<subtitle>Contributions</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8109</id>
		<title>MemJobs</title>
		<link rel="alternate" type="text/html" href="https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8109"/>
		<updated>2017-03-24T16:02:09Z</updated>

		<summary type="html">&lt;p&gt;Khalfa: /* LHCb */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Cette page est destinée à centraliser les informations concernant la gestion de la mémoire des jobs LHC sur les worker des sites LCG France.&lt;br /&gt;
Les membres du projet LCG France sont invités à fournir sur cette page tout type d&#039;information permettant au projet d&#039;améliorer la gestion de la mémoire.&lt;br /&gt;
Voici quelques finalités :&lt;br /&gt;
&lt;br /&gt;
* les achats de RAM sont-il adaptés ?&lt;br /&gt;
* les expériences sont-elles contente avec la façon dont les sites gèrent la mémoire&lt;br /&gt;
* des efforts doivent-ils être fournis par les sites pour répondre à d&#039;éventuels problèmes liés à la consommation de mémoire&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
=== Configuration des worker nodes ===&lt;br /&gt;
&lt;br /&gt;
Merci d&#039;indiquer dans cette section comment vos machines sont configurées pour gérer la mémoire consommée par les jobs.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Système de batch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! RAM/core&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Limitation mémoire &lt;br /&gt;
sur jobs (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Type de limite&lt;br /&gt;
&lt;br /&gt;
! Seuil (GB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Dependance &lt;br /&gt;
selon VO (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Informations&lt;br /&gt;
Supplémentaires&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| UGE&lt;br /&gt;
| 3GB&lt;br /&gt;
| Y&lt;br /&gt;
| vmem &amp;amp; rss&lt;br /&gt;
| [3-4] GB RSS&lt;br /&gt;
| Y&lt;br /&gt;
| Limites suffisent en general mais certains workloads speciaux ou temporaires peuvent necessiter des queues plus permissives.&lt;br /&gt;
|-&lt;br /&gt;
| CPPM&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2, 2.5, 3 Go (selon wn)&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2Go&lt;br /&gt;
| Y&lt;br /&gt;
| vmem (pvmem)&lt;br /&gt;
| 4Go vmem, 3Go vmem/core (multicore)&lt;br /&gt;
| N&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Consommation des jobs ===&lt;br /&gt;
&lt;br /&gt;
On reporte ici les valeurs typiques de consommation mémoire moyenne &#039;&#039;observée&#039;&#039; sur les workers (sur dashboard de site ou dashboard expérience). La mémoire peut être exprimée en VMEM, RSS ou PSS, et en GB/core&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
! ALICE&lt;br /&gt;
! ATLAS&lt;br /&gt;
! CMS&lt;br /&gt;
! LHCb&lt;br /&gt;
! Observations&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| 2.5 GB RSS&lt;br /&gt;
| T1pmc: 7.5 GB PSS vs 15 GB RSS&lt;br /&gt;
T1prod: 1-1.5 GB&lt;br /&gt;
| 3,5 GB (défaut CMS 2 GB en RSS)&lt;br /&gt;
| 2 GB RSS et 2 GB PSS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.44 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.31 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.18 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Vision des expériences ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce que l’expérience souhaite comme type de limitation ou de gestion de la mémoire par les sites.&lt;br /&gt;
La VMEM est-elle OK ? La RSS suffisante ? La PSS souhaitable ? ...&lt;br /&gt;
&lt;br /&gt;
===== ALICE =====&lt;br /&gt;
Pas d&#039;etude serieuse menee jusqu&#039;ici, et pas de besoin particulier. &lt;br /&gt;
Neanmoins on observe regulierement de grosses consommations de memoire, mais il est difficile de savoir aujourd&#039;hui si ces valeurs sont transitoires ou constantes, d&#039;ou la necessite d&#039;analyser la consommation au fur et a mesure que le job se deroule.&lt;br /&gt;
&lt;br /&gt;
===== ATLAS =====&lt;br /&gt;
Selon talk jamboree 2017 Alessandra Forti. https://indico.cern.ch/event/579473/&lt;br /&gt;
&lt;br /&gt;
- Recommendation: Mémoire 2Go/coeurs:  couper sur smaps PSS ou cgroups RSS, couper sur vmem est déconseillé mais si c&#039;est fait mettre limite au moins 3x la mémoire. &lt;br /&gt;
&lt;br /&gt;
-Au niveau de l&#039;envoi des jobs de ATLAS, la sélection du site est fait en fonction de la mémoire demandée ( la mémoire nécessaire n&#039;est pas remplie par l&#039;utilisateur mais &amp;quot;calculée&amp;quot; je sais pas trop comment), donc un job demandant plus de 2 Go de mémoire n&#039;est possible que sur les sites ayant une queue high memory. ATLAS n&#039;insiste pas vraiment pour que les sites mettent à disposition ces queues, ie un petit nombre de site leur suffit. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[image:Memjob_atlas-recommandation.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CMS =====&lt;br /&gt;
Depuis le passage au multicore, la mémoire (RSS) est gérée &amp;quot;globalement&amp;quot; au niveau du pilote lui-même qui va essayer d&#039;utiliser au mieux les ressources auxquelles il a accès (mémoire, CPU, disque). Le pilote adaptera ainsi les &amp;quot;types&amp;quot; de jobs (différentes configurations [job x core] possibles) et les payloads exécutés pour optimiser l&#039;utilisation des ressources. Les ressources auxquelles il a accès dépendent du site, et sont configurés &amp;quot;en dur&amp;quot; au niveau des factories. Par défaut, CMS se base sur les demandes de ressources figurant sur la &amp;quot;VO Id card&amp;quot;, mais celles-ci peuvent être modifiées en accord avec le site (c&#039;est par exemple le cas du CC qui fournit plus de mémoire).&lt;br /&gt;
&lt;br /&gt;
Pour le moment, CMS surveille (&amp;quot;monitore&amp;quot;) la perte de ressources par rapport à ce que le site fournit. Un monitoring succinct est disponible [http://submit-3.t2.ucsd.edu/CSstoragePath/aperez/HTML/site_status/status_mcore_T1_FR_CCIN2P3.html ici].&lt;br /&gt;
&lt;br /&gt;
CMS recommande de ne poser &#039;&#039;&#039;aucune limitation sur la mémoire&#039;&#039;&#039; (et en particulier sur la VMEM [*]). CMSSW utilise JEMALLOC pour l&#039;allocation mémoire (la mémoire virtuelle est réellement allouée en RAM) mais aussi MADV_DONTNEED pour nettoyer la mémoire des pages non utilisées. Ce qui fait que la VMEM va nécessairement augmenter (et dans certains cas dans des proportions importantes, facteur ~5) alors que la mémoire RSS utilisée restera sous contrôle : stats pour des jobs 1-core obtenues sur 1 semaine : RSS ~1,5 GB, queue de la VMEM ~9,6 GB.&lt;br /&gt;
&lt;br /&gt;
CMS utilise ~2GB par coeur (au 95ème centile pour les jobs de la phase II). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[*] Ne pas empêcher l&#039;overcommit de l&#039;OS : vm.overcommit_memory mis à 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour info, &#039;&#039;&#039;Brian&#039;s wishlist&#039;&#039;&#039; (CMS developer working on AAA/XRootD and HTCondor) :&lt;br /&gt;
* Don&#039;t do any limits based on VSIZE.&lt;br /&gt;
* Don&#039;t enable swap.&lt;br /&gt;
* Do limit memory usage based on cgroups.&lt;br /&gt;
* No particular guidance on hard vs soft limits for cgroups. We have found hard limits are less problematic - seems there are a lot of kernel bugs around the reclaim path.  But that&#039;s a very light suggestion.&lt;br /&gt;
&lt;br /&gt;
===== LHCb =====&lt;br /&gt;
&lt;br /&gt;
Pour lhcb, le changement de la limitation de la mémoire par MaxRSS au lieu MaxVMEM n&#039;a pas rapporté aucun changement sur l&#039;efficacité ou sur la quantité des jobs lhcb au CCIN2P3, parce que les jobs de lhcb au CCIN2P3 ne consomment pas trop mémoire.&lt;br /&gt;
&lt;br /&gt;
Mais l&#039;expérience considère depuis toujours que cette solution (MaxRSS + tuer le job) n&#039;est pas du tout idéale parce que ça augmente le nombre des jobs tués à cause de débordement de la mémoire. C&#039;est pour cela lhcb préfère d&#039;utiliser cgroups pour limiter l&#039;utilisation de RSS à 3GB par exemple, avec un espace de swap toujours disponible, mais sans tuer les jobs en aucun cas, c-a-d les jobs restent toujours running même s&#039;il y a un de débordement de la mémoire.&lt;br /&gt;
&lt;br /&gt;
=== Besoins des sites ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce qu&#039;il vous semble utile pour gérer efficacement la consommation de mémoire dans votre site.&lt;br /&gt;
Vous pouvez parler de monitoring, de communication avec les VOs ou sites, d&#039;infrastructure matérielle, de documentation, ce que vous n&#039;avez pas et que vous voudriez avoir.&lt;/div&gt;</summary>
		<author><name>Khalfa</name></author>
	</entry>
	<entry>
		<id>https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8108</id>
		<title>MemJobs</title>
		<link rel="alternate" type="text/html" href="https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8108"/>
		<updated>2017-03-24T09:26:54Z</updated>

		<summary type="html">&lt;p&gt;Khalfa: /* Consommation des jobs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Cette page est destinée à centraliser les informations concernant la gestion de la mémoire des jobs LHC sur les worker des sites LCG France.&lt;br /&gt;
Les membres du projet LCG France sont invités à fournir sur cette page tout type d&#039;information permettant au projet d&#039;améliorer la gestion de la mémoire.&lt;br /&gt;
Voici quelques finalités :&lt;br /&gt;
&lt;br /&gt;
* les achats de RAM sont-il adaptés ?&lt;br /&gt;
* les expériences sont-elles contente avec la façon dont les sites gèrent la mémoire&lt;br /&gt;
* des efforts doivent-ils être fournis par les sites pour répondre à d&#039;éventuels problèmes liés à la consommation de mémoire&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
=== Configuration des worker nodes ===&lt;br /&gt;
&lt;br /&gt;
Merci d&#039;indiquer dans cette section comment vos machines sont configurées pour gérer la mémoire consommée par les jobs.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Système de batch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! RAM/core&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Limitation mémoire &lt;br /&gt;
sur jobs (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Type de limite&lt;br /&gt;
&lt;br /&gt;
! Seuil (GB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Dependance &lt;br /&gt;
selon VO (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Informations&lt;br /&gt;
Supplémentaires&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| UGE&lt;br /&gt;
| 3GB&lt;br /&gt;
| Y&lt;br /&gt;
| vmem &amp;amp; rss&lt;br /&gt;
| [3-4] GB RSS&lt;br /&gt;
| Y&lt;br /&gt;
| Limites suffisent en general mais certains workloads speciaux ou temporaires peuvent necessiter des queues plus permissives.&lt;br /&gt;
|-&lt;br /&gt;
| CPPM&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2, 2.5, 3 Go (selon wn)&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2Go&lt;br /&gt;
| Y&lt;br /&gt;
| vmem (pvmem)&lt;br /&gt;
| 4Go vmem, 3Go vmem/core (multicore)&lt;br /&gt;
| N&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Consommation des jobs ===&lt;br /&gt;
&lt;br /&gt;
On reporte ici les valeurs typiques de consommation mémoire moyenne &#039;&#039;observée&#039;&#039; sur les workers (sur dashboard de site ou dashboard expérience). La mémoire peut être exprimée en VMEM, RSS ou PSS, et en GB/core&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
! ALICE&lt;br /&gt;
! ATLAS&lt;br /&gt;
! CMS&lt;br /&gt;
! LHCb&lt;br /&gt;
! Observations&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| 2.5 GB RSS&lt;br /&gt;
| T1pmc: 7.5 GB PSS vs 15 GB RSS&lt;br /&gt;
T1prod: 1-1.5 GB&lt;br /&gt;
| 3,5 GB (défaut CMS 2 GB en RSS)&lt;br /&gt;
| 2 GB RSS et 2 GB PSS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.44 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.31 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.18 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Vision des expériences ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce que l’expérience souhaite comme type de limitation ou de gestion de la mémoire par les sites.&lt;br /&gt;
La VMEM est-elle OK ? La RSS suffisante ? La PSS souhaitable ? ...&lt;br /&gt;
&lt;br /&gt;
===== ALICE =====&lt;br /&gt;
Pas d&#039;etude serieuse menee jusqu&#039;ici, et pas de besoin particulier. &lt;br /&gt;
Neanmoins on observe regulierement de grosses consommations de memoire, mais il est difficile de savoir aujourd&#039;hui si ces valeurs sont transitoires ou constantes, d&#039;ou la necessite d&#039;analyser la consommation au fur et a mesure que le job se deroule.&lt;br /&gt;
&lt;br /&gt;
===== ATLAS =====&lt;br /&gt;
Selon talk jamboree 2017 Alessandra Forti. https://indico.cern.ch/event/579473/&lt;br /&gt;
&lt;br /&gt;
- Recommendation: Mémoire 2Go/coeurs:  couper sur smaps PSS ou cgroups RSS, couper sur vmem est déconseillé mais si c&#039;est fait mettre limite au moins 3x la mémoire. &lt;br /&gt;
&lt;br /&gt;
-Au niveau de l&#039;envoi des jobs de ATLAS, la sélection du site est fait en fonction de la mémoire demandée ( la mémoire nécessaire n&#039;est pas remplie par l&#039;utilisateur mais &amp;quot;calculée&amp;quot; je sais pas trop comment), donc un job demandant plus de 2 Go de mémoire n&#039;est possible que sur les sites ayant une queue high memory. ATLAS n&#039;insiste pas vraiment pour que les sites mettent à disposition ces queues, ie un petit nombre de site leur suffit. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[image:Memjob_atlas-recommandation.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CMS =====&lt;br /&gt;
Depuis le passage au multicore, la mémoire (RSS) est gérée &amp;quot;globalement&amp;quot; au niveau du pilote lui-même qui va essayer d&#039;utiliser au mieux les ressources auxquelles il a accès (mémoire, CPU, disque). Le pilote adaptera ainsi les &amp;quot;types&amp;quot; de jobs (différentes configurations [job x core] possibles) et les payloads exécutés pour optimiser l&#039;utilisation des ressources. Les ressources auxquelles il a accès dépendent du site, et sont configurés &amp;quot;en dur&amp;quot; au niveau des factories. Par défaut, CMS se base sur les demandes de ressources figurant sur la &amp;quot;VO Id card&amp;quot;, mais celles-ci peuvent être modifiées en accord avec le site (c&#039;est par exemple le cas du CC qui fournit plus de mémoire).&lt;br /&gt;
&lt;br /&gt;
Pour le moment, CMS surveille (&amp;quot;monitore&amp;quot;) la perte de ressources par rapport à ce que le site fournit. Un monitoring succinct est disponible [http://submit-3.t2.ucsd.edu/CSstoragePath/aperez/HTML/site_status/status_mcore_T1_FR_CCIN2P3.html ici].&lt;br /&gt;
&lt;br /&gt;
CMS recommande de ne poser &#039;&#039;&#039;aucune limitation sur la mémoire&#039;&#039;&#039; (et en particulier sur la VMEM [*]). CMSSW utilise JEMALLOC pour l&#039;allocation mémoire (la mémoire virtuelle est réellement allouée en RAM) mais aussi MADV_DONTNEED pour nettoyer la mémoire des pages non utilisées. Ce qui fait que la VMEM va nécessairement augmenter (et dans certains cas dans des proportions importantes, facteur ~5) alors que la mémoire RSS utilisée restera sous contrôle : stats pour des jobs 1-core obtenues sur 1 semaine : RSS ~1,5 GB, queue de la VMEM ~9,6 GB.&lt;br /&gt;
&lt;br /&gt;
CMS utilise ~2GB par coeur (au 95ème centile pour les jobs de la phase II). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[*] Ne pas empêcher l&#039;overcommit de l&#039;OS : vm.overcommit_memory mis à 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour info, &#039;&#039;&#039;Brian&#039;s wishlist&#039;&#039;&#039; (CMS developer working on AAA/XRootD and HTCondor) :&lt;br /&gt;
* Don&#039;t do any limits based on VSIZE.&lt;br /&gt;
* Don&#039;t enable swap.&lt;br /&gt;
* Do limit memory usage based on cgroups.&lt;br /&gt;
* No particular guidance on hard vs soft limits for cgroups. We have found hard limits are less problematic - seems there are a lot of kernel bugs around the reclaim path.  But that&#039;s a very light suggestion.&lt;br /&gt;
&lt;br /&gt;
===== LHCb =====&lt;br /&gt;
&lt;br /&gt;
=== Besoins des sites ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce qu&#039;il vous semble utile pour gérer efficacement la consommation de mémoire dans votre site.&lt;br /&gt;
Vous pouvez parler de monitoring, de communication avec les VOs ou sites, d&#039;infrastructure matérielle, de documentation, ce que vous n&#039;avez pas et que vous voudriez avoir.&lt;/div&gt;</summary>
		<author><name>Khalfa</name></author>
	</entry>
	<entry>
		<id>https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8107</id>
		<title>MemJobs</title>
		<link rel="alternate" type="text/html" href="https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8107"/>
		<updated>2017-03-24T09:22:04Z</updated>

		<summary type="html">&lt;p&gt;Khalfa: /* Consommation des jobs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Cette page est destinée à centraliser les informations concernant la gestion de la mémoire des jobs LHC sur les worker des sites LCG France.&lt;br /&gt;
Les membres du projet LCG France sont invités à fournir sur cette page tout type d&#039;information permettant au projet d&#039;améliorer la gestion de la mémoire.&lt;br /&gt;
Voici quelques finalités :&lt;br /&gt;
&lt;br /&gt;
* les achats de RAM sont-il adaptés ?&lt;br /&gt;
* les expériences sont-elles contente avec la façon dont les sites gèrent la mémoire&lt;br /&gt;
* des efforts doivent-ils être fournis par les sites pour répondre à d&#039;éventuels problèmes liés à la consommation de mémoire&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
=== Configuration des worker nodes ===&lt;br /&gt;
&lt;br /&gt;
Merci d&#039;indiquer dans cette section comment vos machines sont configurées pour gérer la mémoire consommée par les jobs.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Système de batch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! RAM/core&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Limitation mémoire &lt;br /&gt;
sur jobs (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Type de limite&lt;br /&gt;
&lt;br /&gt;
! Seuil (GB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Dependance &lt;br /&gt;
selon VO (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Informations&lt;br /&gt;
Supplémentaires&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| UGE&lt;br /&gt;
| 3GB&lt;br /&gt;
| Y&lt;br /&gt;
| vmem &amp;amp; rss&lt;br /&gt;
| [3-4] GB RSS&lt;br /&gt;
| Y&lt;br /&gt;
| Limites suffisent en general mais certains workloads speciaux ou temporaires peuvent necessiter des queues plus permissives.&lt;br /&gt;
|-&lt;br /&gt;
| CPPM&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2, 2.5, 3 Go (selon wn)&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2Go&lt;br /&gt;
| Y&lt;br /&gt;
| vmem (pvmem)&lt;br /&gt;
| 4Go vmem, 3Go vmem/core (multicore)&lt;br /&gt;
| N&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Consommation des jobs ===&lt;br /&gt;
&lt;br /&gt;
On reporte ici les valeurs typiques de consommation mémoire moyenne &#039;&#039;observée&#039;&#039; sur les workers (sur dashboard de site ou dashboard expérience). La mémoire peut être exprimée en VMEM, RSS ou PSS, et en GB/core&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
! ALICE&lt;br /&gt;
! ATLAS&lt;br /&gt;
! CMS&lt;br /&gt;
! LHCb&lt;br /&gt;
! Observations&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| 2.5 GB RSS&lt;br /&gt;
| T1pmc: 7.5 GB PSS vs 15 GB RSS&lt;br /&gt;
T1prod: 1-1.5 GB&lt;br /&gt;
| 3,5 GB (défaut CMS 2 GB en RSS)&lt;br /&gt;
| 2 GB RSS 2 GB PSS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.44 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.31 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.18 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Vision des expériences ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce que l’expérience souhaite comme type de limitation ou de gestion de la mémoire par les sites.&lt;br /&gt;
La VMEM est-elle OK ? La RSS suffisante ? La PSS souhaitable ? ...&lt;br /&gt;
&lt;br /&gt;
===== ALICE =====&lt;br /&gt;
Pas d&#039;etude serieuse menee jusqu&#039;ici, et pas de besoin particulier. &lt;br /&gt;
Neanmoins on observe regulierement de grosses consommations de memoire, mais il est difficile de savoir aujourd&#039;hui si ces valeurs sont transitoires ou constantes, d&#039;ou la necessite d&#039;analyser la consommation au fur et a mesure que le job se deroule.&lt;br /&gt;
&lt;br /&gt;
===== ATLAS =====&lt;br /&gt;
Selon talk jamboree 2017 Alessandra Forti. https://indico.cern.ch/event/579473/&lt;br /&gt;
&lt;br /&gt;
- Recommendation: Mémoire 2Go/coeurs:  couper sur smaps PSS ou cgroups RSS, couper sur vmem est déconseillé mais si c&#039;est fait mettre limite au moins 3x la mémoire. &lt;br /&gt;
&lt;br /&gt;
-Au niveau de l&#039;envoi des jobs de ATLAS, la sélection du site est fait en fonction de la mémoire demandée ( la mémoire nécessaire n&#039;est pas remplie par l&#039;utilisateur mais &amp;quot;calculée&amp;quot; je sais pas trop comment), donc un job demandant plus de 2 Go de mémoire n&#039;est possible que sur les sites ayant une queue high memory. ATLAS n&#039;insiste pas vraiment pour que les sites mettent à disposition ces queues, ie un petit nombre de site leur suffit. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[image:Memjob_atlas-recommandation.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CMS =====&lt;br /&gt;
Depuis le passage au multicore, la mémoire (RSS) est gérée &amp;quot;globalement&amp;quot; au niveau du pilote lui-même qui va essayer d&#039;utiliser au mieux les ressources auxquelles il a accès (mémoire, CPU, disque). Le pilote adaptera ainsi les &amp;quot;types&amp;quot; de jobs (différentes configurations [job x core] possibles) et les payloads exécutés pour optimiser l&#039;utilisation des ressources. Les ressources auxquelles il a accès dépendent du site, et sont configurés &amp;quot;en dur&amp;quot; au niveau des factories. Par défaut, CMS se base sur les demandes de ressources figurant sur la &amp;quot;VO Id card&amp;quot;, mais celles-ci peuvent être modifiées en accord avec le site (c&#039;est par exemple le cas du CC qui fournit plus de mémoire).&lt;br /&gt;
&lt;br /&gt;
Pour le moment, CMS surveille (&amp;quot;monitore&amp;quot;) la perte de ressources par rapport à ce que le site fournit. Un monitoring succinct est disponible [http://submit-3.t2.ucsd.edu/CSstoragePath/aperez/HTML/site_status/status_mcore_T1_FR_CCIN2P3.html ici].&lt;br /&gt;
&lt;br /&gt;
CMS recommande de ne poser &#039;&#039;&#039;aucune limitation sur la mémoire&#039;&#039;&#039; (et en particulier sur la VMEM [*]). CMSSW utilise JEMALLOC pour l&#039;allocation mémoire (la mémoire virtuelle est réellement allouée en RAM) mais aussi MADV_DONTNEED pour nettoyer la mémoire des pages non utilisées. Ce qui fait que la VMEM va nécessairement augmenter (et dans certains cas dans des proportions importantes, facteur ~5) alors que la mémoire RSS utilisée restera sous contrôle : stats pour des jobs 1-core obtenues sur 1 semaine : RSS ~1,5 GB, queue de la VMEM ~9,6 GB.&lt;br /&gt;
&lt;br /&gt;
CMS utilise ~2GB par coeur (au 95ème centile pour les jobs de la phase II). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[*] Ne pas empêcher l&#039;overcommit de l&#039;OS : vm.overcommit_memory mis à 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour info, &#039;&#039;&#039;Brian&#039;s wishlist&#039;&#039;&#039; (CMS developer working on AAA/XRootD and HTCondor) :&lt;br /&gt;
* Don&#039;t do any limits based on VSIZE.&lt;br /&gt;
* Don&#039;t enable swap.&lt;br /&gt;
* Do limit memory usage based on cgroups.&lt;br /&gt;
* No particular guidance on hard vs soft limits for cgroups. We have found hard limits are less problematic - seems there are a lot of kernel bugs around the reclaim path.  But that&#039;s a very light suggestion.&lt;br /&gt;
&lt;br /&gt;
===== LHCb =====&lt;br /&gt;
&lt;br /&gt;
=== Besoins des sites ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce qu&#039;il vous semble utile pour gérer efficacement la consommation de mémoire dans votre site.&lt;br /&gt;
Vous pouvez parler de monitoring, de communication avec les VOs ou sites, d&#039;infrastructure matérielle, de documentation, ce que vous n&#039;avez pas et que vous voudriez avoir.&lt;/div&gt;</summary>
		<author><name>Khalfa</name></author>
	</entry>
	<entry>
		<id>https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8106</id>
		<title>MemJobs</title>
		<link rel="alternate" type="text/html" href="https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8106"/>
		<updated>2017-03-24T09:21:37Z</updated>

		<summary type="html">&lt;p&gt;Khalfa: /* Consommation des jobs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Cette page est destinée à centraliser les informations concernant la gestion de la mémoire des jobs LHC sur les worker des sites LCG France.&lt;br /&gt;
Les membres du projet LCG France sont invités à fournir sur cette page tout type d&#039;information permettant au projet d&#039;améliorer la gestion de la mémoire.&lt;br /&gt;
Voici quelques finalités :&lt;br /&gt;
&lt;br /&gt;
* les achats de RAM sont-il adaptés ?&lt;br /&gt;
* les expériences sont-elles contente avec la façon dont les sites gèrent la mémoire&lt;br /&gt;
* des efforts doivent-ils être fournis par les sites pour répondre à d&#039;éventuels problèmes liés à la consommation de mémoire&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
=== Configuration des worker nodes ===&lt;br /&gt;
&lt;br /&gt;
Merci d&#039;indiquer dans cette section comment vos machines sont configurées pour gérer la mémoire consommée par les jobs.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Système de batch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! RAM/core&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Limitation mémoire &lt;br /&gt;
sur jobs (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Type de limite&lt;br /&gt;
&lt;br /&gt;
! Seuil (GB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Dependance &lt;br /&gt;
selon VO (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Informations&lt;br /&gt;
Supplémentaires&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| UGE&lt;br /&gt;
| 3GB&lt;br /&gt;
| Y&lt;br /&gt;
| vmem &amp;amp; rss&lt;br /&gt;
| [3-4] GB RSS&lt;br /&gt;
| Y&lt;br /&gt;
| Limites suffisent en general mais certains workloads speciaux ou temporaires peuvent necessiter des queues plus permissives.&lt;br /&gt;
|-&lt;br /&gt;
| CPPM&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2, 2.5, 3 Go (selon wn)&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2Go&lt;br /&gt;
| Y&lt;br /&gt;
| vmem (pvmem)&lt;br /&gt;
| 4Go vmem, 3Go vmem/core (multicore)&lt;br /&gt;
| N&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Consommation des jobs ===&lt;br /&gt;
&lt;br /&gt;
On reporte ici les valeurs typiques de consommation mémoire moyenne &#039;&#039;observée&#039;&#039; sur les workers (sur dashboard de site ou dashboard expérience). La mémoire peut être exprimée en VMEM, RSS ou PSS, et en GB/core&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
! ALICE&lt;br /&gt;
! ATLAS&lt;br /&gt;
! CMS&lt;br /&gt;
! LHCb&lt;br /&gt;
! Observations&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| 2.5 GB RSS&lt;br /&gt;
| T1pmc: 7.5 GB PSS vs 15 GB RSS&lt;br /&gt;
T1prod: 1-1.5 GB&lt;br /&gt;
| 3,5 GB (défaut CMS 2 GB en RSS)&lt;br /&gt;
| 2 GB RSS&lt;br /&gt;
| 2 GB PSS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.44 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.31 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.18 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Vision des expériences ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce que l’expérience souhaite comme type de limitation ou de gestion de la mémoire par les sites.&lt;br /&gt;
La VMEM est-elle OK ? La RSS suffisante ? La PSS souhaitable ? ...&lt;br /&gt;
&lt;br /&gt;
===== ALICE =====&lt;br /&gt;
Pas d&#039;etude serieuse menee jusqu&#039;ici, et pas de besoin particulier. &lt;br /&gt;
Neanmoins on observe regulierement de grosses consommations de memoire, mais il est difficile de savoir aujourd&#039;hui si ces valeurs sont transitoires ou constantes, d&#039;ou la necessite d&#039;analyser la consommation au fur et a mesure que le job se deroule.&lt;br /&gt;
&lt;br /&gt;
===== ATLAS =====&lt;br /&gt;
Selon talk jamboree 2017 Alessandra Forti. https://indico.cern.ch/event/579473/&lt;br /&gt;
&lt;br /&gt;
- Recommendation: Mémoire 2Go/coeurs:  couper sur smaps PSS ou cgroups RSS, couper sur vmem est déconseillé mais si c&#039;est fait mettre limite au moins 3x la mémoire. &lt;br /&gt;
&lt;br /&gt;
-Au niveau de l&#039;envoi des jobs de ATLAS, la sélection du site est fait en fonction de la mémoire demandée ( la mémoire nécessaire n&#039;est pas remplie par l&#039;utilisateur mais &amp;quot;calculée&amp;quot; je sais pas trop comment), donc un job demandant plus de 2 Go de mémoire n&#039;est possible que sur les sites ayant une queue high memory. ATLAS n&#039;insiste pas vraiment pour que les sites mettent à disposition ces queues, ie un petit nombre de site leur suffit. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[image:Memjob_atlas-recommandation.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CMS =====&lt;br /&gt;
Depuis le passage au multicore, la mémoire (RSS) est gérée &amp;quot;globalement&amp;quot; au niveau du pilote lui-même qui va essayer d&#039;utiliser au mieux les ressources auxquelles il a accès (mémoire, CPU, disque). Le pilote adaptera ainsi les &amp;quot;types&amp;quot; de jobs (différentes configurations [job x core] possibles) et les payloads exécutés pour optimiser l&#039;utilisation des ressources. Les ressources auxquelles il a accès dépendent du site, et sont configurés &amp;quot;en dur&amp;quot; au niveau des factories. Par défaut, CMS se base sur les demandes de ressources figurant sur la &amp;quot;VO Id card&amp;quot;, mais celles-ci peuvent être modifiées en accord avec le site (c&#039;est par exemple le cas du CC qui fournit plus de mémoire).&lt;br /&gt;
&lt;br /&gt;
Pour le moment, CMS surveille (&amp;quot;monitore&amp;quot;) la perte de ressources par rapport à ce que le site fournit. Un monitoring succinct est disponible [http://submit-3.t2.ucsd.edu/CSstoragePath/aperez/HTML/site_status/status_mcore_T1_FR_CCIN2P3.html ici].&lt;br /&gt;
&lt;br /&gt;
CMS recommande de ne poser &#039;&#039;&#039;aucune limitation sur la mémoire&#039;&#039;&#039; (et en particulier sur la VMEM [*]). CMSSW utilise JEMALLOC pour l&#039;allocation mémoire (la mémoire virtuelle est réellement allouée en RAM) mais aussi MADV_DONTNEED pour nettoyer la mémoire des pages non utilisées. Ce qui fait que la VMEM va nécessairement augmenter (et dans certains cas dans des proportions importantes, facteur ~5) alors que la mémoire RSS utilisée restera sous contrôle : stats pour des jobs 1-core obtenues sur 1 semaine : RSS ~1,5 GB, queue de la VMEM ~9,6 GB.&lt;br /&gt;
&lt;br /&gt;
CMS utilise ~2GB par coeur (au 95ème centile pour les jobs de la phase II). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[*] Ne pas empêcher l&#039;overcommit de l&#039;OS : vm.overcommit_memory mis à 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour info, &#039;&#039;&#039;Brian&#039;s wishlist&#039;&#039;&#039; (CMS developer working on AAA/XRootD and HTCondor) :&lt;br /&gt;
* Don&#039;t do any limits based on VSIZE.&lt;br /&gt;
* Don&#039;t enable swap.&lt;br /&gt;
* Do limit memory usage based on cgroups.&lt;br /&gt;
* No particular guidance on hard vs soft limits for cgroups. We have found hard limits are less problematic - seems there are a lot of kernel bugs around the reclaim path.  But that&#039;s a very light suggestion.&lt;br /&gt;
&lt;br /&gt;
===== LHCb =====&lt;br /&gt;
&lt;br /&gt;
=== Besoins des sites ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce qu&#039;il vous semble utile pour gérer efficacement la consommation de mémoire dans votre site.&lt;br /&gt;
Vous pouvez parler de monitoring, de communication avec les VOs ou sites, d&#039;infrastructure matérielle, de documentation, ce que vous n&#039;avez pas et que vous voudriez avoir.&lt;/div&gt;</summary>
		<author><name>Khalfa</name></author>
	</entry>
	<entry>
		<id>https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8105</id>
		<title>MemJobs</title>
		<link rel="alternate" type="text/html" href="https://lcg.in2p3.fr/index.php?title=MemJobs&amp;diff=8105"/>
		<updated>2017-03-24T09:19:03Z</updated>

		<summary type="html">&lt;p&gt;Khalfa: /* Consommation des jobs */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Introduction ===&lt;br /&gt;
&lt;br /&gt;
Cette page est destinée à centraliser les informations concernant la gestion de la mémoire des jobs LHC sur les worker des sites LCG France.&lt;br /&gt;
Les membres du projet LCG France sont invités à fournir sur cette page tout type d&#039;information permettant au projet d&#039;améliorer la gestion de la mémoire.&lt;br /&gt;
Voici quelques finalités :&lt;br /&gt;
&lt;br /&gt;
* les achats de RAM sont-il adaptés ?&lt;br /&gt;
* les expériences sont-elles contente avec la façon dont les sites gèrent la mémoire&lt;br /&gt;
* des efforts doivent-ils être fournis par les sites pour répondre à d&#039;éventuels problèmes liés à la consommation de mémoire&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
=== Configuration des worker nodes ===&lt;br /&gt;
&lt;br /&gt;
Merci d&#039;indiquer dans cette section comment vos machines sont configurées pour gérer la mémoire consommée par les jobs.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Système de batch&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! RAM/core&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Limitation mémoire &lt;br /&gt;
sur jobs (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Type de limite&lt;br /&gt;
&lt;br /&gt;
! Seuil (GB)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
! Dependance &lt;br /&gt;
selon VO (Y/N)&lt;br /&gt;
&lt;br /&gt;
! Informations&lt;br /&gt;
Supplémentaires&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| UGE&lt;br /&gt;
| 3GB&lt;br /&gt;
| Y&lt;br /&gt;
| vmem &amp;amp; rss&lt;br /&gt;
| [3-4] GB RSS&lt;br /&gt;
| Y&lt;br /&gt;
| Limites suffisent en general mais certains workloads speciaux ou temporaires peuvent necessiter des queues plus permissives.&lt;br /&gt;
|-&lt;br /&gt;
| CPPM&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2, 2.5, 3 Go (selon wn)&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| HTCondor&lt;br /&gt;
| 2Go&lt;br /&gt;
| N&lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
| &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| Torque Maui&lt;br /&gt;
| 2Go&lt;br /&gt;
| Y&lt;br /&gt;
| vmem (pvmem)&lt;br /&gt;
| 4Go vmem, 3Go vmem/core (multicore)&lt;br /&gt;
| N&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Consommation des jobs ===&lt;br /&gt;
&lt;br /&gt;
On reporte ici les valeurs typiques de consommation mémoire moyenne &#039;&#039;observée&#039;&#039; sur les workers (sur dashboard de site ou dashboard expérience). La mémoire peut être exprimée en VMEM, RSS ou PSS, et en GB/core&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Site&lt;br /&gt;
! ALICE&lt;br /&gt;
! ATLAS&lt;br /&gt;
! CMS&lt;br /&gt;
! LHCb&lt;br /&gt;
! Observations&lt;br /&gt;
|-&lt;br /&gt;
| CCIN2P3&lt;br /&gt;
| 2.5 GB RSS&lt;br /&gt;
| T1pmc: 7.5 GB PSS vs 15 GB RSS&lt;br /&gt;
T1prod: 1-1.5 GB&lt;br /&gt;
| 3,5 GB (défaut CMS 2 GB en RSS)&lt;br /&gt;
| 2 GB RSS&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LAL&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.44 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LLR&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.31 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| GRIF-LPNHE&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| x&lt;br /&gt;
| 3.18 Go VMEM&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Vision des expériences ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce que l’expérience souhaite comme type de limitation ou de gestion de la mémoire par les sites.&lt;br /&gt;
La VMEM est-elle OK ? La RSS suffisante ? La PSS souhaitable ? ...&lt;br /&gt;
&lt;br /&gt;
===== ALICE =====&lt;br /&gt;
Pas d&#039;etude serieuse menee jusqu&#039;ici, et pas de besoin particulier. &lt;br /&gt;
Neanmoins on observe regulierement de grosses consommations de memoire, mais il est difficile de savoir aujourd&#039;hui si ces valeurs sont transitoires ou constantes, d&#039;ou la necessite d&#039;analyser la consommation au fur et a mesure que le job se deroule.&lt;br /&gt;
&lt;br /&gt;
===== ATLAS =====&lt;br /&gt;
Selon talk jamboree 2017 Alessandra Forti. https://indico.cern.ch/event/579473/&lt;br /&gt;
&lt;br /&gt;
- Recommendation: Mémoire 2Go/coeurs:  couper sur smaps PSS ou cgroups RSS, couper sur vmem est déconseillé mais si c&#039;est fait mettre limite au moins 3x la mémoire. &lt;br /&gt;
&lt;br /&gt;
-Au niveau de l&#039;envoi des jobs de ATLAS, la sélection du site est fait en fonction de la mémoire demandée ( la mémoire nécessaire n&#039;est pas remplie par l&#039;utilisateur mais &amp;quot;calculée&amp;quot; je sais pas trop comment), donc un job demandant plus de 2 Go de mémoire n&#039;est possible que sur les sites ayant une queue high memory. ATLAS n&#039;insiste pas vraiment pour que les sites mettent à disposition ces queues, ie un petit nombre de site leur suffit. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[image:Memjob_atlas-recommandation.pdf]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===== CMS =====&lt;br /&gt;
Depuis le passage au multicore, la mémoire (RSS) est gérée &amp;quot;globalement&amp;quot; au niveau du pilote lui-même qui va essayer d&#039;utiliser au mieux les ressources auxquelles il a accès (mémoire, CPU, disque). Le pilote adaptera ainsi les &amp;quot;types&amp;quot; de jobs (différentes configurations [job x core] possibles) et les payloads exécutés pour optimiser l&#039;utilisation des ressources. Les ressources auxquelles il a accès dépendent du site, et sont configurés &amp;quot;en dur&amp;quot; au niveau des factories. Par défaut, CMS se base sur les demandes de ressources figurant sur la &amp;quot;VO Id card&amp;quot;, mais celles-ci peuvent être modifiées en accord avec le site (c&#039;est par exemple le cas du CC qui fournit plus de mémoire).&lt;br /&gt;
&lt;br /&gt;
Pour le moment, CMS surveille (&amp;quot;monitore&amp;quot;) la perte de ressources par rapport à ce que le site fournit. Un monitoring succinct est disponible [http://submit-3.t2.ucsd.edu/CSstoragePath/aperez/HTML/site_status/status_mcore_T1_FR_CCIN2P3.html ici].&lt;br /&gt;
&lt;br /&gt;
CMS recommande de ne poser &#039;&#039;&#039;aucune limitation sur la mémoire&#039;&#039;&#039; (et en particulier sur la VMEM [*]). CMSSW utilise JEMALLOC pour l&#039;allocation mémoire (la mémoire virtuelle est réellement allouée en RAM) mais aussi MADV_DONTNEED pour nettoyer la mémoire des pages non utilisées. Ce qui fait que la VMEM va nécessairement augmenter (et dans certains cas dans des proportions importantes, facteur ~5) alors que la mémoire RSS utilisée restera sous contrôle : stats pour des jobs 1-core obtenues sur 1 semaine : RSS ~1,5 GB, queue de la VMEM ~9,6 GB.&lt;br /&gt;
&lt;br /&gt;
CMS utilise ~2GB par coeur (au 95ème centile pour les jobs de la phase II). &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[*] Ne pas empêcher l&#039;overcommit de l&#039;OS : vm.overcommit_memory mis à 0.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour info, &#039;&#039;&#039;Brian&#039;s wishlist&#039;&#039;&#039; (CMS developer working on AAA/XRootD and HTCondor) :&lt;br /&gt;
* Don&#039;t do any limits based on VSIZE.&lt;br /&gt;
* Don&#039;t enable swap.&lt;br /&gt;
* Do limit memory usage based on cgroups.&lt;br /&gt;
* No particular guidance on hard vs soft limits for cgroups. We have found hard limits are less problematic - seems there are a lot of kernel bugs around the reclaim path.  But that&#039;s a very light suggestion.&lt;br /&gt;
&lt;br /&gt;
===== LHCb =====&lt;br /&gt;
&lt;br /&gt;
=== Besoins des sites ===&lt;br /&gt;
&lt;br /&gt;
Insérez ici ce qu&#039;il vous semble utile pour gérer efficacement la consommation de mémoire dans votre site.&lt;br /&gt;
Vous pouvez parler de monitoring, de communication avec les VOs ou sites, d&#039;infrastructure matérielle, de documentation, ce que vous n&#039;avez pas et que vous voudriez avoir.&lt;/div&gt;</summary>
		<author><name>Khalfa</name></author>
	</entry>
</feed>