Another important aspect of the software stack is the role of low-level libraries for key computational kernels, such as linear algebra, fast Fourier transforms, and communication routines. These libraries play a critical role in achieving high performance and efficiency on exascale systems. However, the use of different libraries across different platforms can also contribute to software fragmentation. For example, while Nvidia provides the highly optimized cuBLAS library for linear algebra operations on their GPUs, AMD offers the RocBLAS library. These libraries, despite providing similar functionality, often have different APIs and performance characteristics, further hindering code portability.