{"id":"https://openalex.org/W2085681751","doi":"https://doi.org/10.1145/2389836.2389849","title":"Cache-sensitive MapReduce DGEMM algorithms for shared memory architectures","display_name":"Cache-sensitive MapReduce DGEMM algorithms for shared memory architectures","publication_year":2012,"publication_date":"2012-10-01","ids":{"openalex":"https://openalex.org/W2085681751","doi":"https://doi.org/10.1145/2389836.2389849","mag":"2085681751"},"language":"en","primary_location":{"id":"doi:10.1145/2389836.2389849","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2389836.2389849","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the South African Institute for Computer Scientists and Information Technologists Conference","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5048563580","display_name":"Gideon Nimako","orcid":"https://orcid.org/0000-0002-8798-0712"},"institutions":[{"id":"https://openalex.org/I192619145","display_name":"University of the Witwatersrand","ror":"https://ror.org/03rp50x72","country_code":"ZA","type":"education","lineage":["https://openalex.org/I192619145"]}],"countries":["ZA"],"is_corresponding":false,"raw_author_name":"Gideon Nimako","raw_affiliation_strings":["The University of the Witwatersrand, Johannesburg, South Africa"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"The University of the Witwatersrand, Johannesburg, South Africa","institution_ids":["https://openalex.org/I192619145"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5050430493","display_name":"Ekow Otoo","orcid":null},"institutions":[{"id":"https://openalex.org/I192619145","display_name":"University of the Witwatersrand","ror":"https://ror.org/03rp50x72","country_code":"ZA","type":"education","lineage":["https://openalex.org/I192619145"]}],"countries":["ZA"],"is_corresponding":false,"raw_author_name":"E. J. Otoo","raw_affiliation_strings":["The University of the Witwatersrand, Johannesburg, South Africa"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"The University of the Witwatersrand, Johannesburg, South Africa","institution_ids":["https://openalex.org/I192619145"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5079079344","display_name":"Daniel Ohene\u2010Kwofie","orcid":"https://orcid.org/0000-0001-7107-9498"},"institutions":[{"id":"https://openalex.org/I192619145","display_name":"University of the Witwatersrand","ror":"https://ror.org/03rp50x72","country_code":"ZA","type":"education","lineage":["https://openalex.org/I192619145"]}],"countries":["ZA"],"is_corresponding":false,"raw_author_name":"Daniel Ohene-Kwofie","raw_affiliation_strings":["The University of the Witwatersrand, Johannesburg, South Africa"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"The University of the Witwatersrand, Johannesburg, South Africa","institution_ids":["https://openalex.org/I192619145"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I192619145"],"apc_list":null,"apc_paid":null,"fwci":0.2897,"has_fulltext":false,"cited_by_count":1,"citation_normalized_percentile":{"value":0.58758212,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"100","last_page":"110"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9998000264167786,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10101","display_name":"Cloud Computing and Resource Management","score":0.9983000159263611,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T11612","display_name":"Stochastic Gradient Optimization Techniques","score":0.9961000084877014,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8499382734298706},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.8186869621276855},{"id":"https://openalex.org/keywords/matrix-multiplication","display_name":"Matrix multiplication","score":0.7198479175567627},{"id":"https://openalex.org/keywords/cache-oblivious-algorithm","display_name":"Cache-oblivious algorithm","score":0.6053951978683472},{"id":"https://openalex.org/keywords/memory-bandwidth","display_name":"Memory bandwidth","score":0.5596597790718079},{"id":"https://openalex.org/keywords/multiplication","display_name":"Multiplication (music)","score":0.5397390723228455},{"id":"https://openalex.org/keywords/linear-algebra","display_name":"Linear algebra","score":0.5213369131088257},{"id":"https://openalex.org/keywords/task-parallelism","display_name":"Task parallelism","score":0.49340763688087463},{"id":"https://openalex.org/keywords/cache","display_name":"Cache","score":0.4742414355278015},{"id":"https://openalex.org/keywords/multiplication-algorithm","display_name":"Multiplication algorithm","score":0.4689611494541168},{"id":"https://openalex.org/keywords/shared-memory","display_name":"Shared memory","score":0.4521300494670868},{"id":"https://openalex.org/keywords/cpu-cache","display_name":"CPU cache","score":0.4476182758808136},{"id":"https://openalex.org/keywords/distributed-memory","display_name":"Distributed memory","score":0.4296163320541382},{"id":"https://openalex.org/keywords/exploit","display_name":"Exploit","score":0.4220411777496338},{"id":"https://openalex.org/keywords/instruction-level-parallelism","display_name":"Instruction-level parallelism","score":0.41638246178627014},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.36254221200942993},{"id":"https://openalex.org/keywords/parallelism","display_name":"Parallelism (grammar)","score":0.30088919401168823},{"id":"https://openalex.org/keywords/cache-coloring","display_name":"Cache coloring","score":0.3006778359413147},{"id":"https://openalex.org/keywords/arithmetic","display_name":"Arithmetic","score":0.1876903772354126},{"id":"https://openalex.org/keywords/binary-number","display_name":"Binary number","score":0.08359295129776001},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.07144367694854736}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8499382734298706},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.8186869621276855},{"id":"https://openalex.org/C17349429","wikidata":"https://www.wikidata.org/wiki/Q1049914","display_name":"Matrix multiplication","level":3,"score":0.7198479175567627},{"id":"https://openalex.org/C59687516","wikidata":"https://www.wikidata.org/wiki/Q5015938","display_name":"Cache-oblivious algorithm","level":5,"score":0.6053951978683472},{"id":"https://openalex.org/C188045654","wikidata":"https://www.wikidata.org/wiki/Q17148339","display_name":"Memory bandwidth","level":2,"score":0.5596597790718079},{"id":"https://openalex.org/C2780595030","wikidata":"https://www.wikidata.org/wiki/Q3860309","display_name":"Multiplication (music)","level":2,"score":0.5397390723228455},{"id":"https://openalex.org/C139352143","wikidata":"https://www.wikidata.org/wiki/Q82571","display_name":"Linear algebra","level":2,"score":0.5213369131088257},{"id":"https://openalex.org/C42992933","wikidata":"https://www.wikidata.org/wiki/Q691169","display_name":"Task parallelism","level":3,"score":0.49340763688087463},{"id":"https://openalex.org/C115537543","wikidata":"https://www.wikidata.org/wiki/Q165596","display_name":"Cache","level":2,"score":0.4742414355278015},{"id":"https://openalex.org/C201290732","wikidata":"https://www.wikidata.org/wiki/Q130762","display_name":"Multiplication algorithm","level":3,"score":0.4689611494541168},{"id":"https://openalex.org/C133875982","wikidata":"https://www.wikidata.org/wiki/Q764810","display_name":"Shared memory","level":2,"score":0.4521300494670868},{"id":"https://openalex.org/C189783530","wikidata":"https://www.wikidata.org/wiki/Q352090","display_name":"CPU cache","level":3,"score":0.4476182758808136},{"id":"https://openalex.org/C91481028","wikidata":"https://www.wikidata.org/wiki/Q1054686","display_name":"Distributed memory","level":3,"score":0.4296163320541382},{"id":"https://openalex.org/C165696696","wikidata":"https://www.wikidata.org/wiki/Q11287","display_name":"Exploit","level":2,"score":0.4220411777496338},{"id":"https://openalex.org/C140763907","wikidata":"https://www.wikidata.org/wiki/Q2714055","display_name":"Instruction-level parallelism","level":3,"score":0.41638246178627014},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.36254221200942993},{"id":"https://openalex.org/C2781172179","wikidata":"https://www.wikidata.org/wiki/Q853109","display_name":"Parallelism (grammar)","level":2,"score":0.30088919401168823},{"id":"https://openalex.org/C201148951","wikidata":"https://www.wikidata.org/wiki/Q5015976","display_name":"Cache coloring","level":4,"score":0.3006778359413147},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.1876903772354126},{"id":"https://openalex.org/C48372109","wikidata":"https://www.wikidata.org/wiki/Q3913","display_name":"Binary number","level":2,"score":0.08359295129776001},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.07144367694854736},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0},{"id":"https://openalex.org/C84114770","wikidata":"https://www.wikidata.org/wiki/Q46344","display_name":"Quantum","level":2,"score":0.0},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C62520636","wikidata":"https://www.wikidata.org/wiki/Q944","display_name":"Quantum mechanics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2389836.2389849","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2389836.2389849","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the South African Institute for Computer Scientists and Information Technologists Conference","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":22,"referenced_works":["https://openalex.org/W50182133","https://openalex.org/W54452421","https://openalex.org/W109452172","https://openalex.org/W1480492238","https://openalex.org/W1502634912","https://openalex.org/W1542482333","https://openalex.org/W1598993252","https://openalex.org/W1964711958","https://openalex.org/W2042850642","https://openalex.org/W2056999868","https://openalex.org/W2064744742","https://openalex.org/W2077790567","https://openalex.org/W2098220211","https://openalex.org/W2099958604","https://openalex.org/W2103460560","https://openalex.org/W2104644701","https://openalex.org/W2122465391","https://openalex.org/W2122515712","https://openalex.org/W2157758640","https://openalex.org/W2159309967","https://openalex.org/W4231150350","https://openalex.org/W4232919122"],"related_works":["https://openalex.org/W2526302199","https://openalex.org/W1860211040","https://openalex.org/W2009213655","https://openalex.org/W2003935582","https://openalex.org/W4240606930","https://openalex.org/W2154460420","https://openalex.org/W2950520577","https://openalex.org/W168408236","https://openalex.org/W2105992728","https://openalex.org/W3007272028"],"abstract_inverted_index":{"Parallelism":[0],"in":[1,25,170],"linear":[2,81],"algebra":[3,82],"libraries":[4],"is":[5,17],"a":[6,31,66,133],"common":[7],"approach":[8],"to":[9,108],"accelerate":[10],"numerical":[11,28],"and":[12,27,53,73,100,144,148,174],"scientific":[13,26],"applications.":[14],"Matrix-matrix":[15],"multiplication":[16,35,48,69,137,161],"one":[18],"of":[19,33,92,113,123],"the":[20,77,93,98,110,114,120,124,155,171],"most":[21],"widely":[22],"used":[23],"computations":[24],"algorithms.":[29],"Although":[30],"number":[32],"matrix":[34,136,160],"algorithms":[36,49,83,107,157,162],"exist":[37],"for":[38,50,71,163],"distributed":[39],"memory":[40,52,142],"environments":[41],"(e.g.,":[42],"Cannon,":[43],"Fox,":[44],"PUMMA,":[45],"SUMMA),":[46],"matrix-matrix":[47,68],"shared":[51],"SMP":[54,74],"architectures":[55,75,90,165],"have":[56],"not":[57],"been":[58],"extensively":[59],"studied.":[60],"In":[61],"this":[62],"paper,":[63],"we":[64],"present":[65,132],"fast":[67],"algorithm":[70,138],"multi-core":[72,89],"using":[76],"MapReduce":[78,135],"framework.":[79],"Memory-resident":[80],"suffer":[84],"performance":[85,95,126],"losses":[86],"on":[87],"modern":[88],"because":[91],"increasing":[94],"gap":[96,127],"between":[97],"CPU":[99],"main":[101],"memory.":[102],"To":[103],"allow":[104],"such":[105,166],"compute-intensive":[106],"exploit":[109],"full":[111],"potential":[112],"program's":[115],"inherent":[116],"instruction":[117],"level":[118],"parallelism,":[119],"adverse":[121],"effect":[122],"processor-memory":[125],"should":[128],"be":[129],"minimized.":[130],"We":[131],"cache-sensitive":[134],"that":[139,154],"fully":[140],"exploits":[141],"bandwidth":[143],"minimize":[145],"cache":[146],"misses":[147],"conflicts.":[149],"Our":[150],"experimental":[151],"results":[152],"show":[153],"two":[156],"outperform":[158],"existing":[159],"shared-memory":[164],"as":[167],"those":[168],"given":[169],"Phoenix,":[172],"PLASMA":[173],"LAPACK":[175],"libraries.":[176]},"counts_by_year":[{"year":2013,"cited_by_count":1}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
