From 5c31bdb9652bf3daa2e300449b8404f5788ed6e2 Mon Sep 17 00:00:00 2001 From: Gilles Grospellier Date: Sun, 29 Sep 2024 09:47:37 +0200 Subject: [PATCH] =?UTF-8?q?[arcane,std]=20Utilise=20le=20kilo-octet=20(au?= =?UTF-8?q?=20lieu=20de=20octet)=20comme=20unit=C3=A9=20pour=20la=20taille?= =?UTF-8?q?=20maximale=20d'=C3=A9criture.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- arcane/src/arcane/std/VtkHdfV2PostProcessor.axl | 2 +- arcane/src/arcane/std/VtkHdfV2PostProcessor.cc | 9 +++++---- arcane/tests/testHydro-1-vtkhdfv2-backward.arc | 2 +- arcane/tests/testHydro-1-vtkhdfv2.arc | 2 +- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/arcane/src/arcane/std/VtkHdfV2PostProcessor.axl b/arcane/src/arcane/std/VtkHdfV2PostProcessor.axl index 1f27d9286..f969dc2e7 100644 --- a/arcane/src/arcane/std/VtkHdfV2PostProcessor.axl +++ b/arcane/src/arcane/std/VtkHdfV2PostProcessor.axl @@ -23,7 +23,7 @@ User - Taille maximale en octet d'un bloc pour une écriture collective. + Taille maximale en kilo-octet d'un bloc pour une écriture collective. Si la taille maximale dépasse cette valeur, l'écriture est scindée en plusieurs écritures. Cela n'est actif que pour les écritures avec MPI-IO. diff --git a/arcane/src/arcane/std/VtkHdfV2PostProcessor.cc b/arcane/src/arcane/std/VtkHdfV2PostProcessor.cc index 4ac77d164..b9e1fa3b5 100644 --- a/arcane/src/arcane/std/VtkHdfV2PostProcessor.cc +++ b/arcane/src/arcane/std/VtkHdfV2PostProcessor.cc @@ -278,7 +278,7 @@ class VtkHdfV2DataWriter ItemGroupCollectiveInfo m_all_nodes_info; /*! - * \brief Taille maximum pour une écriture. + * \brief Taille maximale (en kilo-octet) pour une écriture. * * Si l'écriture dépasse cette taille, elle est scindée en plusieurs écriture. * Cela peut être nécessaire avec MPI-IO pour les gros volumes. @@ -379,9 +379,10 @@ beginWrite(const VariableCollection& vars) if (pm->isHybridImplementation() || pm->isThreadImplementation()) m_is_collective_io = false; - if (is_first_call) + if (is_first_call) { info() << "VtkHdfV2DataWriter: using collective MPI/IO ?=" << m_is_collective_io; - + info() << "VtkHdfV2DataWriter: max_write_size (kB) =" << m_max_write_size; + } // Vrai si on doit participer aux écritures // Si on utilise MPI/IO avec HDF5, il faut tout de même que tous // les rangs fassent toutes les opérations d'écriture pour garantir @@ -745,7 +746,7 @@ _writeDataSetGeneric(const DataInfo& data_info, Int32 nb_dim, // Cela n'est possible que pour l'écriture collective. Int64 nb_interval = 1; if (is_collective && m_max_write_size > 0) { - nb_interval = 1 + nb_write_byte / m_max_write_size; + nb_interval = 1 + nb_write_byte / (m_max_write_size * 1024); } info(4) << "WRITE global_size=" << nb_write_byte << " max_size=" << m_max_write_size << " nb_interval=" << nb_interval; diff --git a/arcane/tests/testHydro-1-vtkhdfv2-backward.arc b/arcane/tests/testHydro-1-vtkhdfv2-backward.arc index 48f2847cc..367fd8f23 100644 --- a/arcane/tests/testHydro-1-vtkhdfv2-backward.arc +++ b/arcane/tests/testHydro-1-vtkhdfv2-backward.arc @@ -22,7 +22,7 @@ 2 - 15000 + 15 CellMass diff --git a/arcane/tests/testHydro-1-vtkhdfv2.arc b/arcane/tests/testHydro-1-vtkhdfv2.arc index 51a9f85a1..d2ca18950 100644 --- a/arcane/tests/testHydro-1-vtkhdfv2.arc +++ b/arcane/tests/testHydro-1-vtkhdfv2.arc @@ -34,7 +34,7 @@ 5 - 15000 + 15 CellMass