Каков наилучший способ измерения памяти, используемой при запуске функции в Sage? - PullRequest
1 голос
/ 03 мая 2019

Я рассчитываю измерить несколько разных методов для достижения одной и той же цели, и основные критерии, которые мне дали, это то, что программа должна использовать как можно меньше памяти. Я пробовал смотреть онлайн, но единственный связанный с памятью аспект, который я могу найти, касается низкоуровневого выделения памяти.

Есть ли функция или метод для точного определения использования памяти?

Спасибо

1 Ответ

0 голосов
/ 05 мая 2019

Да, есть! Вот пример из одного из билетов Sage, пытающегося отследить утечки памяти :

print get_memory_usage()
K = GF(10007^2, 'a')
X = PolynomialRing(K, 'x').gen()
for i in range(1000):
   s = K.random_element(); t = K.random_element()
   poly = s + t*X
print get_memory_usage()

Я думаю, что возможно более изощренное использование (например, использование Valgrind, который был дополнительным пакетом, который по крайней мере работал с Sage), поэтому я не могу сказать, является ли это лучший способ его измерения , но это должно быть хорошее место для начала.

...