ruixueqingyang / unibenchv2 Goto Github PK
View Code? Open in Web Editor NEWThis project forked from mattoslf/unibenchv2
This project forked from mattoslf/unibenchv2
UniBench 2015 - Institute of Computing, Unicamp, Brazil Authors: Luís Felipe Mattos, Rafael Cardoso & Márcio Pereira Introduction ------------ The UniBench is a collection of open source benchmark suites organized in a simple and modular structure. This benchmark suites were converted to make use of the new 'target' directive on the OpenMP 4.0 and was developed to test our version of the Clang compiler, which translates OpenMP 4.0 into OpenCL programs. Quick setup guide ----------------- To use the UniBench, the script need the right permissions. If the unibench script does not have the execution permission, just use: chmod +x ./unibench Use './parboil help' to display the commands and the avaiable benchmarks. Use './parboil list' to display the avaiable benchmarks. Executing a benchmark ------------------- The unibench script offer many options for the execution. If you want to execute a specific benchmark from a specific benchmark suite, you need to specify the suite and the benchmark in the command line. For example, if you want to compile or execute the 2MM benchmark from the Polybench suite, you just need to use: ./unibench compile Polybench/2MM ./unibench run Polybench/2MM The script also accept the option to execute the complete benchmark suite, you can do this by specifying only the suite in the command line. For example, if you want to compile or execute the Parboil suite, just type: ./unibench compile Parboil ./unibench run Parboil However, if you want to compile or execute all the avaiable benchmarks, just use: ./unibench compile all ./unibench run all An important point is that this script is case sensitive, if you want to be sure that your benchmark name is correct, use a 'list' command before executing the UniBench. Cleaning a benchmark ------------------- The script also offer the 'clean' command, with the same options from the previous examples, you can clean the binaries from a specific benchmark from a suite, from a whole suite or from all benchmarks. For example: ./unibench clean Polybench/2MM ./unibench clean Parboil ./unibench clean all Output ------------------- The UniBench output is the execution time on the GPU device, execution time for the serial version running on the CPU and the comparison of the results, with an acceptable threshold for the float precision. An example for the execution of the Polybench-2MM: << Linear Algebra: 2 Matrix Multiplications (D=A.B; E=C.D) >> GPU Runtime: 2.554422s CPU Runtime: 9.622760s Non-Matching CPU-GPU Outputs Beyond Error Threshold of 0.05 Percent: 0
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.