Skip to content

Commit 3630d9d

Browse files
committed
Do not export multi type support to python -> use sys.getsizeof
1 parent d670684 commit 3630d9d

File tree

2 files changed

+39
-35
lines changed

2 files changed

+39
-35
lines changed

python/dolfinx/wrappers/common.cpp

Lines changed: 35 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -146,20 +146,20 @@ void common(nb::module_& m)
146146
m.attr("ufcx_signature") = dolfinx::ufcx_signature();
147147
m.attr("version") = dolfinx::version();
148148

149-
enum MemoryUnit : std::int64_t
150-
{
151-
byte = dolfinx::common::byte.value,
152-
kilobyte = dolfinx::common::kilobyte.value,
153-
megabyte = dolfinx::common::megabyte.value,
154-
gigabyte = dolfinx::common::gigabyte.value,
155-
terabyte = dolfinx::common::terabyte.value,
156-
};
157-
nb::enum_<MemoryUnit>(m, "MemoryUnit")
158-
.value("byte", MemoryUnit::byte)
159-
.value("kilobyte", MemoryUnit::kilobyte)
160-
.value("megabyte", MemoryUnit::megabyte)
161-
.value("gigabyte", MemoryUnit::gigabyte)
162-
.value("terabyte", MemoryUnit::terabyte);
149+
// enum MemoryUnit : std::int64_t
150+
// {
151+
// byte = dolfinx::common::byte.value,
152+
// kilobyte = dolfinx::common::kilobyte.value,
153+
// megabyte = dolfinx::common::megabyte.value,
154+
// gigabyte = dolfinx::common::gigabyte.value,
155+
// terabyte = dolfinx::common::terabyte.value,
156+
// };
157+
// nb::enum_<MemoryUnit>(m, "MemoryUnit")
158+
// .value("byte", MemoryUnit::byte)
159+
// .value("kilobyte", MemoryUnit::kilobyte)
160+
// .value("megabyte", MemoryUnit::megabyte)
161+
// .value("gigabyte", MemoryUnit::gigabyte)
162+
// .value("terabyte", MemoryUnit::terabyte);
163163

164164
nb::enum_<dolfinx::Table::Reduction>(m, "Reduction")
165165
.value("max", dolfinx::Table::Reduction::max)
@@ -265,25 +265,27 @@ void common(nb::module_& m)
265265
return dolfinx_wrappers::as_nbarray(std::move(local));
266266
},
267267
nb::arg("global"))
268-
.def("memory",
269-
[](const dolfinx::common::IndexMap& self, MemoryUnit unit)
270-
{
271-
switch (unit)
272-
{
273-
case MemoryUnit::byte:
274-
return double(
275-
dolfinx::common::memory(self, dolfinx::common::byte));
276-
case MemoryUnit::kilobyte:
277-
return dolfinx::common::memory(self, dolfinx::common::kilobyte);
278-
case MemoryUnit::megabyte:
279-
return dolfinx::common::memory(self, dolfinx::common::megabyte);
280-
case MemoryUnit::gigabyte:
281-
return dolfinx::common::memory(self, dolfinx::common::gigabyte);
282-
case MemoryUnit::terabyte:
283-
return dolfinx::common::memory(self, dolfinx::common::terabyte);
284-
}
285-
throw std::runtime_error("Not a valid memory unit.");
286-
});
268+
.def("__sizeof__", [](const dolfinx::common::IndexMap& self)
269+
{ return dolfinx::common::memory(self, dolfinx::common::byte); });
270+
// .def("memory",
271+
// [](const dolfinx::common::IndexMap& self, MemoryUnit unit)
272+
// {
273+
// switch (unit)
274+
// {
275+
// case MemoryUnit::byte:
276+
// return double(
277+
// dolfinx::common::memory(self, dolfinx::common::byte));
278+
// case MemoryUnit::kilobyte:
279+
// return dolfinx::common::memory(self, dolfinx::common::kilobyte);
280+
// case MemoryUnit::megabyte:
281+
// return dolfinx::common::memory(self, dolfinx::common::megabyte);
282+
// case MemoryUnit::gigabyte:
283+
// return dolfinx::common::memory(self, dolfinx::common::gigabyte);
284+
// case MemoryUnit::terabyte:
285+
// return dolfinx::common::memory(self, dolfinx::common::terabyte);
286+
// }
287+
// throw std::runtime_error("Not a valid memory unit.");
288+
// });
287289

288290
// dolfinx::common::Timer
289291
nb::class_<dolfinx::common::Timer<std::chrono::high_resolution_clock>>(

python/test/unit/common/test_index_map.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
# SPDX-License-Identifier: LGPL-3.0-or-later
66

77
import math
8+
import sys
89

910
from mpi4py import MPI
1011

@@ -42,8 +43,9 @@ def test_sub_index_map():
4243
comm, map_local_size, [dest_ranks, src_ranks], map_ghosts, src_ranks
4344
)
4445
assert map.size_global == map_local_size * comm.size
45-
assert map.memory(dolfinx.cpp.common.MemoryUnit.byte) > 0
46-
assert map.memory(dolfinx.cpp.common.MemoryUnit.kilobyte) > 0
46+
assert sys.getsizeof(map) > 0
47+
# assert map.memory(dolfinx.cpp.common.MemoryUnit.byte) > 0
48+
# assert map.memory(dolfinx.cpp.common.MemoryUnit.kilobyte) > 0
4749

4850
# Build list for each rank of the first (myrank + myrank % 2) local
4951
# indices

0 commit comments

Comments
 (0)