Maha Kooli

Dr. Maha Kooli


Research Focus & Metrics

Academic Career Length

10Years (2017-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
18 December 2018 in IEEE Transactions on Computers
Verified
Journal Article
Closed access
AVA. Vallero
A. Vallero
Alessandro SavinoAlessandro Savino
Alessandro Savino
ACA. Chatzidimitriou
A. Chatzidimitriou
MKM. Kaliorakis
M. Kaliorakis
MKMaha Kooli
Maha Kooli
Stefano Di CarloStefano Di Carlo
Stefano Di Carlo

1 October 2019
Verified
Conference Paper
Open access
RGR. Gauchi
R. Gauchi
MKMaha Kooli
Maha Kooli
PVP. Vivet
P. Vivet
JNJ.-P. Noel
J.-P. Noel
EBE. Beigne
E. Beigne
HCHenri-Pierre Charles
Henri-Pierre Charles

Verified
Journal Article
Open access
PDF file
KMKévin Mambu
Kévin Mambu
HCHenri-Pierre Charles
Henri-Pierre Charles
MKMaha Kooli
Maha Kooli
JDJulie Dumas
Julie Dumas
In-memory computing (IMC) aims to solve the performance gap between CPU and memories introduced by the memory wall. However, it does not address the energy wall problem caused by data transfer over memory hierarchies. This paper proposes the data-locality management unit (DMU) to efficiently transfer data from a DRAM memory to a computational SRAM (C-SRAM) memory allowing IMC operations. The DMU is tightly coupled within the C-SRAM and allows one to align the data structure in order to perform effective in-memory computation. We propose a dedicated instruction set within the DMU to issue data transfers. The performance evaluation of a system integrating C-SRAM within the DMU compared to a reference scalar system architecture shows an increase from ×5.73 to ×11.01 in speed-up and from ×29.49 to ×46.67 in energy reduction, versus a system integrating C-SRAM without any transfer mechanism compared to a reference scalar system architecture.

30 March 2023 in IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Verified
Journal Article
Closed access
KMKévin Mambu
Kévin Mambu
HCHenri-Pierre Charles
Henri-Pierre Charles
MKMaha Kooli
Maha Kooli
In-memory computing (IMC) aims at solving the performance gap between CPU and memories introduced by the memory wall. However, general-purpose IMC does not consider the optimization of data transfers for patterns, such as stencils and convolutions. This article proposes a new instruction set architecture (ISA) and a novel pattern encoding for IMC to transfer and organize data streams in order to perform efficiently computation. This instruction set is implemented on the data-locality management unit (DMU) as a subset of the computational SRAM (C-SRAM) ISA. A programming model to interact with the DMU at language level is also presented in this article. This DMU ISA is evaluated on six applications run on three different system nodes. These system nodes are based on existing RISC-V cores and range from embedded to high-performance computing domain. Experiments show on average a speed-up of $\times 8.81$ , an energy reduction factor of $\times 6.81$ , and an improvement of the number of operations per cycle of $\times 4.59$ , for the C-SRAM architecture integrating the proposed ISA of the DMU compared to a reference implementation on embedded systems. Results also show an improvement of the number of operations per cycle of $\times 2.99$ compared to a reference implementation on all system nodes.

16 March 2019 in Journal of Electronic Testing
Verified
Journal Article
Closed access
PDF file
MKMaha Kooli
Maha Kooli
GNGiorgio Di Natale
Giorgio Di Natale
Alberto BosioAlberto Bosio
Alberto Bosio

Verified
Journal Article
Open access
PDF file
JDJulie Dumas
Julie Dumas
HCHenri-Pierre Charles
Henri-Pierre Charles
KMKévin Mambu
Kévin Mambu
MKMaha Kooli
Maha Kooli
This article describes a software environment called HybroGen, which helps to experiment binary code generation at run time. As computing architectures are getting more complex, the application performance is becoming data-dependent. The proposed experimental platform is helpful in programming applications that can be reconfigured at run time in order to be adapted for a new data environment. The HybroGen platform is adapted to heterogeneous architectures and can generate instructions for different targets. This platform allows to go farther than classical JIT compilation in many directions: the code generator is smaller by three orders of magnitude and faster by three orders of magnitude, compared to JIT (Just-In-Time) platforms, and allows making code transformation that is impossible in traditional compilation schemes, such as code generation for non von Neumann accelerators or dynamic code transformations for transprecision. The latter is illustrated in a code example: the square root with Newton’s algorithm. We also illustrate the proposed HybroGen platform with two other examples: a multiplication with a specialization on a value determined at run time, and a conversion of degrees Celsius to degrees Fahrenheit. This article presents a proof of concept of the proposed HybroGen platform in terms of its functionalities, and demonstrates the working status.