{ "data_id": "43871", "name": "SGEMM_GPU_kernel_performance", "exact_name": "SGEMM_GPU_kernel_performance", "version": 3, "version_label": null, "description": "**Dataset description**\n\nThis data set measures the running time of a matrix-matrix product $A \\times B = C$, where all \nmatrices \nhave size 2048 x 2048, using a parameterizable *SGEMM GPU* (Single Precision General Matrix Multiply) \nkernel with 241600 possible parameter \ncombinations. For each tested combination, 4 runs were performed and their results are reported \nas the 4 last columns. All times are measured in milliseconds*. There are 14 parameters, the first \n10 are ordinal and can only take up to 4 different powers of two values, and the 4 last variables \nare binary. Out of 1327104 total parameter combinations, only 241600 are feasible (due to various \nkernel constraints). This data set contains the results for all these feasible combinations. \nThe experiment was run on a desktop workstation running Ubuntu 16.04 Linux with an Intel Core i5 \n(3.5GHz), 16GB RAM, and a NVidia Geforce GTX 680 4GB GF580 GTX-1.5GB GPU. We use the 'gemm_fast' \nkernel from the automatic OpenCL kernel tuning library 'CLTune' (https:\/\/github.com\/CNugteren\/CLTune). \n\n\\* *Note*: For this kind of data sets it is usually better to work with the logarithm of the running \ntimes (see e.g. Falch and Elster, 'Machine learning-based auto-tuning for enhanced performance \nportability of OpenCL applications', 2015).\n\n**Attribute description** \n\n*Independent variables*\n\n* MWG, NWG: per-matrix 2D tiling at workgroup level: {16, 32, 64, 128} \n(integer)\n\n* KWG: inner dimension of 2D tiling at workgroup level: {16, 32} (integer) \n* MDIMC, NDIMC: local workgroup size: {8, 16, 32} (integer) 6-7. MDIMA, NDIMB: local memory shape: \n{8, 16, 32} (integer) \n* KWI: kernel loop unrolling factor: {2, 8} (integer) \n* VWM, VWN: per-matrix vector widths for loading and storing: {1, 2, 4, 8} (integer) \n* STRM, STRN: enable stride for accessing off-chip memory within a single thread: {0, 1} (categorical)\n* SA, SB: per-matrix manual caching of the 2D workgroup tile: {0, 1} (categorical) - \n\n*Output* \n\n* Run1, Run2, Run3, Run4: performance times in milliseconds for 4 independent runs using the same \nparameters. They range between 13.25 and 3397.08. Run1 is used as the default target variable.\n\n**Related Studies**\n\nRafael Ballester-Ripoll, Enrique G. Paredes, Renato Pajarola.\nSobol Tensor Trains for Global Sensitivity Analysis.\nIn arXiv Computer Science \/ Numerical Analysis e-prints, 2017,\nhttps:\/\/doi.org\/10.1016\/j.ress.2018.11.007\n\n**Authors**\n\nEnrique Paredes and Rafael Ballester-Ripoll. The original data was obtained from the UCI Machine Learning\nrepository [Link](https:\/\/archive.ics.uci.edu\/ml\/datasets\/sgemm+gpu+kernel+performance).\n\n**Citation**\n\nPlease cite one of the following papers: \n\n* Rafael Ballester-Ripoll, Enrique G. Paredes, Renato Pajarola.\nSobol Tensor Trains for Global Sensitivity Analysis.\nIn arXiv Computer Science \/ Numerical Analysis e-prints, 2017,\nhttps:\/\/arxiv.org\/abs\/1712.00233\n\n* Cedric Nugteren and Valeriu Codreanu.\nCLTune: A Generic Auto-Tuner for OpenCL Kernels.\nIn: MCSoC: 9th International Symposium on Embedded Multicore\/Many-core Systems-on-Chip. IEEE, 2015,\nhttps:\/\/doi.org\/10.1109\/MCSoC.2015.10", "format": "arff", "uploader": "Sebastian Fischer", "uploader_id": 30127, "visibility": "public", "creator": null, "contributor": null, "date": "2022-04-20 17:15:38", "update_comment": null, "last_update": "2022-04-20 17:15:38", "licence": "CC BY 4.0", "status": "active", "error_message": null, "url": "https:\/\/old.openml.org\/data\/download\/22102748\/data.arff", "kaggle_url": null, "default_target_attribute": "Run1", "row_id_attribute": null, "ignore_attribute": "\"Run2\",\"Run3\",\"Run4\"", "runs": 0, "suggest": { "input": [ "SGEMM_GPU_kernel_performance", "This data set measures the running time of a matrix-matrix product $A \\times B = C$, where all matrices have size 2048 x 2048, using a parameterizable *SGEMM GPU* (Single Precision General Matrix Multiply) kernel with 241600 possible parameter combinations. For each tested combination, 4 runs were performed and their results are reported as the 4 last columns. All times are measured in milliseconds*. There are 14 parameters, the first 10 are ordinal and can only take up to 4 different powers of " ], "weight": 5 }, "qualities": { "NumberOfInstances": 241600, "NumberOfFeatures": 15, "NumberOfClasses": 0, "NumberOfMissingValues": 0, "NumberOfInstancesWithMissingValues": 0, "NumberOfNumericFeatures": 15, "NumberOfSymbolicFeatures": 0, "PercentageOfBinaryFeatures": 0, "PercentageOfInstancesWithMissingValues": 0, "PercentageOfMissingValues": 0, "AutoCorrelation": -95.49168465101374, "PercentageOfNumericFeatures": 100, "Dimensionality": 6.208609271523179e-5, "PercentageOfSymbolicFeatures": 0, "MajorityClassPercentage": null, "MajorityClassSize": null, "MinorityClassPercentage": null, "MinorityClassSize": null, "NumberOfBinaryFeatures": 0 }, "tags": [], "features": [ { "name": "Run1", "index": "14", "type": "numeric", "distinct": "58161", "missing": "0", "target": "1", "min": "13", "max": "3340", "mean": "218", "stdev": "369" }, { "name": "MWG", "index": "0", "type": "numeric", "distinct": "4", "missing": "0", "min": "16", "max": "128", "mean": "80", "stdev": "42" }, { "name": "NWG", "index": "1", "type": "numeric", "distinct": "4", "missing": "0", "min": "16", "max": "128", "mean": "80", "stdev": "42" }, { "name": "KWG", "index": "2", "type": "numeric", "distinct": "2", "missing": "0", "min": "16", "max": "32", "mean": "26", "stdev": "8" }, { "name": "MDIMC", "index": "3", "type": "numeric", "distinct": "3", "missing": "0", "min": "8", "max": "32", "mean": "14", "stdev": "8" }, { "name": "NDIMC", "index": "4", "type": "numeric", "distinct": "3", "missing": "0", "min": "8", "max": "32", "mean": "14", "stdev": "8" }, { "name": "MDIMA", "index": "5", "type": "numeric", "distinct": "3", "missing": "0", "min": "8", "max": "32", "mean": "17", "stdev": "9" }, { "name": "NDIMB", "index": "6", "type": "numeric", "distinct": "3", "missing": "0", "min": "8", "max": "32", "mean": "17", "stdev": "9" }, { "name": "KWI", "index": "7", "type": "numeric", "distinct": "2", "missing": "0", "min": "2", "max": "8", "mean": "5", "stdev": "3" }, { "name": "VWM", "index": "8", "type": "numeric", "distinct": "4", "missing": "0", "min": "1", "max": "8", "mean": "2", "stdev": "2" }, { "name": "VWN", "index": "9", "type": "numeric", "distinct": "4", "missing": "0", "min": "1", "max": "8", "mean": "2", "stdev": "2" }, { "name": "STRM", "index": "10", "type": "numeric", "distinct": "2", "missing": "0", "min": "0", "max": "1", "mean": "1", "stdev": "1" }, { "name": "STRN", "index": "11", "type": "numeric", "distinct": "2", "missing": "0", "min": "0", "max": "1", "mean": "1", "stdev": "1" }, { "name": "SA", "index": "12", "type": "numeric", "distinct": "2", "missing": "0", "min": "0", "max": "1", "mean": "1", "stdev": "1" }, { "name": "SB", "index": "13", "type": "numeric", "distinct": "2", "missing": "0", "min": "0", "max": "1", "mean": "1", "stdev": "1" }, { "name": "Run2", "index": "15", "type": "numeric", "distinct": "58269", "missing": "0", "ignore": "1", "min": "13", "max": "3375", "mean": "218", "stdev": "369" }, { "name": "Run3", "index": "16", "type": "numeric", "distinct": "58264", "missing": "0", "ignore": "1", "min": "13", "max": "3397", "mean": "218", "stdev": "369" }, { "name": "Run4", "index": "17", "type": "numeric", "distinct": "58154", "missing": "0", "ignore": "1", "min": "13", "max": "3362", "mean": "218", "stdev": "369" } ], "nr_of_issues": 0, "nr_of_downvotes": 0, "nr_of_likes": 0, "nr_of_downloads": 0, "total_downloads": 0, "reach": 0, "reuse": 0, "impact_of_reuse": 0, "reach_of_reuse": 0, "impact": 0 }