Изчисления в паметта, без използването на процесор: работи се върху нов интерпретатор на Python
Изследователи от израелския институт Technion са разработили софтуерен пакет за извършване на операции в паметта без участието на процесора. Използва се програмният език Python.
През изминалите няколко години в сферата на компютърните изследвания се появи нова област: изчисления в паметта. Докато традиционно процесорът извършва действия въз основа на информацията, съхранявана в паметта на компютъра, при този иновативен подход някои от действията се извършват директно в паметта. Това дава възможност за по-бързи изчисления и спестява енергия.
Професор Шахар Кватински е посветил последните няколко години на намирането на решения на „проблема със стената на паметта“ – основна характеристика на компютрите, която изисква два отделни хардуерни компонента. В статии, публикувани наскоро, той представи технологии, които дават възможност някои операции да се извършват в паметта.

Тази промяна на парадигмата в компютърната архитектура може да се приложи в много области, включително изкуствения интелект, биоинформатиката, финансите, информационните системи и т.н. Много изследователски групи в академичните среди и в промишлеността сега работят в тази насока: изучават архитектурата на паметта, изследват производството на модулите и плочките памет и изучават изчислителните операции в паметта.
Въпреки това досега почти не е изследван един важен аспект на този подход: софтуерът. В продължение на десетилетия компютърните програми се пишеха за „класически“ компютри, чиято основна структура почти не се е променила от 40-те години на миналия век.
„Новият метод на изчисление е толкова различен от традиционния, че прави някои от съществуващите градивни елементи на информатиката неизползваеми. Затова трябва да напишем нов код“, обяснява професор Кватински.
Публикацията на изследователския екип предлага решение на този проблем. Новата софтуерна платформа представя набор от команди, които са се превърнали в мост между изчисленията в паметта и традиционните езици за програмиране като Python. Изследователите са разработили теоретична рамка и са създали библиотеки, които превръщат командите на Python в машинни команди, които се изпълняват директно в паметта на компютъра.
Новата софтуерна платформа се нарича PyPIM, комбинация от името Python и акронима Processing-in-Memory (обработка в паметта). Благодарение на нея разработчиците на софтуер ще могат лесно да пишат програми за PIM компютри.
Изследователите са създали и инструмент за моделиране на хардуера и измерване на неговата производителност. Той позволява да се оцени подобрението на времето за изпълнение на този нов тип код в сравнение с конвенционалния компютър. Статията демонстрира различни примери за компютри с кратък, прост код и значителни подобрения в производителността.
Изследването е представено на Международния симпозиум по микроархитектура на IEEE/ACM, проведен в Остин, Тексас. Документът е достъпен и на сървъра за предварителни публикации arXiv.