Исследователи Университета штата Северная Каролина разработали программное обеспечение, которое с помощью двух новых методов помогает дизайнерам компьютерных чипов улучшить системы памяти. Методы полагаются на производительность клонирования, которая может оценить поведение программного обеспечения без ущерба для привилегированных данных или собственного компьютерного кода.
Производители компьютерного чипа попытались разработать свои фишки, чтобы обеспечить наилучшую производительность. Но для того, чтобы найти наиболее эффективные проекты, производители должны знать какие программы будут использоваться клиентами.
“Например, программы модели сворачивания белка используют много вычислительной мощности, но очень мало данных – так что производители знают и разрабатывают чипы с большим количеством центральных процессоров (CPU), но существенно меньше памяти для хранения, чем будет найдено на других чипах”,- говорит Ян Solihin, адъюнкт-профессор вычислительной техники в НК государства и автор двух статей, описывающих новые методы.
Тем не менее многие крупные клиенты – от крупных корпораций до фирм Уолл-стрит – не хотят, чтобы их код был отличен от других. И это дает повод производителям выпускать чип с наилучшей конструкцией.
Один из способов решения этой проблемы находится в производительности клонирования. Концепция производительности клонирования заключается в том, что производитель чипа предоставит профилировщикам программное обеспечение клиента. Клиент будет использовать профайлер, чтобы оценить его собственное программное обеспечение и профайлер будет генерировать статистический отчет о выполнении фирменного программного обеспечения. Этот доклад позволяет производить чипы без ущерба для данных клиента или кода.
В докладе профилирования затем будет подаваться программное обеспечение генератора, которые могут разработать синтетическую программу, имитирующую эксплуатационные характеристики программного обеспечения клиента. Эта синтетическая программа будет служить в качестве основы для разработки чипов, которые будут лучше удовлетворять потребности клиентов.
Предыдущая работа Гентского университета и Университета Техаса в Остине использовала производительность клонирования для решения вопросов, связанных с дизайном процессора – но эти инициативы не сосредоточились на системах памяти, которые являются важным элементом общего дизайна чипа.
Исследователи уже разработали программное обеспечение с помощью двух новых методов, чтобы помочь оптимизировать системы памяти.
Первый метод называется MEMST (эмуляция памяти с использованием стохастических следов) оценивает память синтетической программы, сосредоточившись на объеме памяти используемой программы, расположении данных, извлечении и образце поиска.
Например, MEMST ведет учет как часто программа извлекает данные из одного и того же места в течении короткого промежутка времени и то, как влияет расположение рядом других данных. Обе эти переменные влияют на то, как быстро программа может извлекать данные.
Второй метод, называемый MeToo, основан наблюдении за поведением внутренней памяти – как часто программа извлекает данные и какую периодичность имеет этот процесс, в течении которого делается много запросов памяти за малый промежуток времени. Поведение временной памяти может иметь значительное влияние на то, какой вид будет иметь система памяти.
Например, если Вы думаете о запросах памяти, то их можно сравнить с автомобилями и пробками на дорогах. Вы должны быть уверены, что на дороге нет пробки, а есть достаточно полос для движения. Так и с пропускной способностью памяти – чем шире полоса пропускания и чем больше полос, тем лучше.
Обе программы MEMST и MeToo полезны для разработчиков чипов, а именно для тех, кто работает на таких компонентах памяти как DRAW, контроллерах памяти и шинах памяти.
“Наш следующий шаг в работе заключается в том, чтобы взять MEMST и MeToo и нашу работу на кэш-памяти, а также доработать комплексную программу, чтобы поставить ее на коммерческие рейки” – говорит Solihin, автор предстоящих “Основ параллельной многоядерной архитектуры”, в которых рассматривается дизайн иерархии памяти.
В документе на MEMST: “MEMST: Клонирование поведения памяти с использованием стохастических следов” будут представлены на Международном симпозиуме по системам памяти, который будет проводится 5-8 октября 2015 года в Вашингтоне. Также данный документ будет представлен 18-21 октября 2015 года а Сан-Франциско на Международной конференции по параллельным архитектурам.