Новая техника управления памятью позволяет ускорить программы на 19%
На м/н симпозиуме параллельных и распределенных вычислений будет представлена новая техника организации управления памятью, дающая возможность добиться заметного повышения производительности стандартных приложений при их работе на многоядерных процессорах
🕛 07.04.2010, 00:37
При том увеличение производительности заметно в программах для которых в рядовых условиях довольно сложно распараллелить операции, к примеру, в браузерах и текстовых процессорах.Суть техники в выделении функций динамического распределения памяти в отдельный поток MMT (Memory Management Thread), работающий попутно и не блокирующий работу основного приложения. В данный момент разработчиками подготовлен прототип динамической библиотеки, подменяющей стандартные функции распределения памяти (malloc, free) и не требующей модификации приложения.
Измерение производительности разных программ, в зависимости от активности операций выделения и освобождения блоков памяти, показало, что в среднем программы тратят на исполнение операций по распределению памяти до 30% собственного времени исполнения. Эксплуатацию техники MMT позволяет увеличить скорость работы этих программ в среднем на 19%.
В будущем вероятно расширение библиотеки средствами по фоновому обнаружению аномалий в работе программы или выполнению дополнительных проверок, связанных с безопасностью. В качестве примера приводится библиотека Phkmalloc, обеспечивающая ряд связанных с безопасностью дополнительных проверок, ценой которых является ощутимое замедление работы. В обычной ситуации среднее замедление при использовании Phkmalloc составляет 21% (в конкретных случаях до 44%), однако при задействовании техники фонового распределения памяти замедление от дополнительных проверок безопасности в Phkmalloc удалось свести к 1%.