Skip to content

ragz4125/matrix_mul

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

matrix_mul

Different implementations of matrix multiplication optimized for x86 machines using AVX-256 instructions.

Prerequisites

  • CMake (version 3.10 or higher)
  • A C++ compiler with AVX2 support
  • Windows: Visual Studio with C++ workload or MinGW-w64
  • Linux/MacOS: GCC or Clang

Building the Project

  1. Create a build directory:
mkdir build
cd build
  1. Configure with CMake:
cmake ..
  1. Build the project:
  • On Windows with Visual Studio:
cmake --build . --config Release
  • On Linux/MacOS:
make

The executable will be created in:

  • Windows: build/bin/Release/dgemm_exe.exe
  • Linux/MacOS: build/dgemm_exe

Running the Program

Simply run the executable:

  • Windows: .\bin\Release\dgemm_exe.exe
  • Linux/MacOS: ./dgemm_exe

The program will perform matrix multiplication performance tests using different implementations and display the results.

Features

  • Optimized matrix multiplication using AVX-256 instructions
  • Performance comparison between different implementations
  • Automatic matrix generation for testing
  • Performance metrics calculation

Technical Details

  • Uses C++11 standard
  • Implements AVX2 and FMA instructions for optimal performance
  • Includes both debug and release configurations
  • Employs Link Time Optimization (LTO) when supported

About

Different implementations of matrix multiplication suited for x86 machines

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors