MINIME-GPU: Multicore Benchmark Synthesizer for GPUs

MINIME-GPU is an automated tool that generates synthetic benchmarks in C++ using OpenCL API. The GPU synthetic benchmark preserves the following performance characteristics: instruction throughput, computation-to-memory access, dynamic memory instruction mix, memory efficiency, and compute unit occupancy. Our framework contains two main modules: benchmark characterizer and synthetic benchmark synthesizer. The benchmark characterizer obtains parallel benchmark characteristics by using a simulation tool. The benchmark synthesizer generates a synthetic benchmark from the benchmark characteristics obtained. Also, the specific OpenCL API is used during synthesis in order to generate benchmarks for CPU/GPU heterogeneous systems.

 

Publications

  • Etem Deniz and Alper Sen, "MINIME-GPU: Multicore Benchmark Synthesizer for GPUs", ACM Transactions on Architecture and Code Optimization (TACO), 2015. PDF
  • Etem Deniz, Alper Sen, Brian Kahne, and Jim Holt, "MINIME: Pattern-Aware Multicore Benchmark Synthesizer", IEEE Transactions on Computers (TC), 2015. PDF
  • Etem Deniz, Alper Sen, Jim Holt, and Brian Kahne, "Using Software Architectural Patterns for Synthetic Embedded Multicore Benchmark Development", IEEE International Symposium on Workload Characterization (IISWC), 2012. PDF
  •  

    Source Code

    Multi2Sim, AMD Catalyst driver, and AMD APP SDK with OpenCL are required for running the MINIME-GPU.
    The source code can be downloaded here. It includes Multi2Sim.

     

    Contact

    If you have any comment, questions, suggestions, or want to contribute to MINIME-GPU, please feel free to contact us at: etem.deniz at boun dot edu dot tr