{"id":"https://openalex.org/W2995010870","doi":"https://doi.org/10.1109/tpds.2019.2960333","title":"SLEEF: A Portable Vectorized Library of C Standard Mathematical Functions","display_name":"SLEEF: A Portable Vectorized Library of C Standard Mathematical Functions","publication_year":2019,"publication_date":"2019-12-18","ids":{"openalex":"https://openalex.org/W2995010870","doi":"https://doi.org/10.1109/tpds.2019.2960333","mag":"2995010870"},"language":"en","primary_location":{"id":"doi:10.1109/tpds.2019.2960333","is_oa":true,"landing_page_url":"https://doi.org/10.1109/tpds.2019.2960333","pdf_url":"https://ieeexplore.ieee.org/ielx7/71/8965249/08936472.pdf","source":{"id":"https://openalex.org/S97130795","display_name":"IEEE Transactions on Parallel and Distributed Systems","issn_l":"1045-9219","issn":["1045-9219","1558-2183","2161-9883"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Parallel and Distributed Systems","raw_type":"journal-article"},"type":"article","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"hybrid","oa_url":"https://ieeexplore.ieee.org/ielx7/71/8965249/08936472.pdf","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Naoki Shibata","orcid":"https://orcid.org/0000-0002-9430-5555"},"institutions":[{"id":"https://openalex.org/I75917431","display_name":"Nara Institute of Science and Technology","ror":"https://ror.org/05bhada84","country_code":"JP","type":"education","lineage":["https://openalex.org/I75917431"]}],"countries":["JP"],"is_corresponding":true,"raw_author_name":"Naoki Shibata","raw_affiliation_strings":["Graduate School of Information Science, Nara Institute of Science and Technology, Nara, Japan"],"affiliations":[{"raw_affiliation_string":"Graduate School of Information Science, Nara Institute of Science and Technology, Nara, Japan","institution_ids":["https://openalex.org/I75917431"]}]},{"author_position":"last","author":{"id":null,"display_name":"Francesco Petrogalli","orcid":"https://orcid.org/0000-0001-8375-3638"},"institutions":[{"id":"https://openalex.org/I2801109035","display_name":"ARM (United Kingdom)","ror":"https://ror.org/04mmhzs81","country_code":"GB","type":"company","lineage":["https://openalex.org/I2801109035"]}],"countries":["GB"],"is_corresponding":false,"raw_author_name":"Francesco Petrogalli","raw_affiliation_strings":["ARM 110, Cambridge, United Kingdom"],"affiliations":[{"raw_affiliation_string":"ARM 110, Cambridge, United Kingdom","institution_ids":["https://openalex.org/I2801109035"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I75917431"],"apc_list":null,"apc_paid":null,"fwci":1.9961,"has_fulltext":true,"cited_by_count":27,"citation_normalized_percentile":{"value":0.88276195,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":96,"max":99},"biblio":{"volume":"31","issue":"6","first_page":"1316","last_page":"1327"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11697","display_name":"Numerical Methods and Algorithms","score":0.6317999958992004,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/T11697","display_name":"Numerical Methods and Algorithms","score":0.6317999958992004,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/T10126","display_name":"Logic, programming, and type systems","score":0.17579999566078186,"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"}},{"id":"https://openalex.org/T11435","display_name":"Polynomial and algebraic computation","score":0.06210000067949295,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/simd","display_name":"SIMD","score":0.6819000244140625},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.6252999901771545},{"id":"https://openalex.org/keywords/preprocessor","display_name":"Preprocessor","score":0.5432000160217285},{"id":"https://openalex.org/keywords/trigonometry","display_name":"Trigonometry","score":0.4921000003814697},{"id":"https://openalex.org/keywords/floating-point","display_name":"Floating point","score":0.4763000011444092},{"id":"https://openalex.org/keywords/trigonometric-functions","display_name":"Trigonometric functions","score":0.4259999990463257},{"id":"https://openalex.org/keywords/point","display_name":"Point (geometry)","score":0.4074000120162964},{"id":"https://openalex.org/keywords/library-function","display_name":"Library function","score":0.38040000200271606}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8131999969482422},{"id":"https://openalex.org/C150552126","wikidata":"https://www.wikidata.org/wiki/Q339387","display_name":"SIMD","level":2,"score":0.6819000244140625},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.6252999901771545},{"id":"https://openalex.org/C34736171","wikidata":"https://www.wikidata.org/wiki/Q918333","display_name":"Preprocessor","level":2,"score":0.5432000160217285},{"id":"https://openalex.org/C29001434","wikidata":"https://www.wikidata.org/wiki/Q8084","display_name":"Trigonometry","level":2,"score":0.4921000003814697},{"id":"https://openalex.org/C84211073","wikidata":"https://www.wikidata.org/wiki/Q117879","display_name":"Floating point","level":2,"score":0.4763000011444092},{"id":"https://openalex.org/C178009071","wikidata":"https://www.wikidata.org/wiki/Q93344","display_name":"Trigonometric functions","level":2,"score":0.4259999990463257},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4171000123023987},{"id":"https://openalex.org/C28719098","wikidata":"https://www.wikidata.org/wiki/Q44946","display_name":"Point (geometry)","level":2,"score":0.4074000120162964},{"id":"https://openalex.org/C2992306863","wikidata":"https://www.wikidata.org/wiki/Q188860","display_name":"Library function","level":2,"score":0.38040000200271606},{"id":"https://openalex.org/C111335779","wikidata":"https://www.wikidata.org/wiki/Q3454686","display_name":"Reduction (mathematics)","level":2,"score":0.36390000581741333},{"id":"https://openalex.org/C459310","wikidata":"https://www.wikidata.org/wiki/Q117801","display_name":"Computational science","level":1,"score":0.36340001225471497},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.35499998927116394},{"id":"https://openalex.org/C2778400913","wikidata":"https://www.wikidata.org/wiki/Q1639024","display_name":"Mathematical software","level":3,"score":0.3549000024795532},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3544999957084656},{"id":"https://openalex.org/C2456702","wikidata":"https://www.wikidata.org/wiki/Q1375954","display_name":"Vector-valued function","level":2,"score":0.3531999886035919},{"id":"https://openalex.org/C161824985","wikidata":"https://www.wikidata.org/wiki/Q919509","display_name":"Vector processor","level":2,"score":0.3366999924182892},{"id":"https://openalex.org/C86111242","wikidata":"https://www.wikidata.org/wiki/Q859595","display_name":"Coprocessor","level":2,"score":0.323199987411499},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3199000060558319},{"id":"https://openalex.org/C35912277","wikidata":"https://www.wikidata.org/wiki/Q1243369","display_name":"Double-precision floating-point format","level":3,"score":0.2987000048160553},{"id":"https://openalex.org/C128099668","wikidata":"https://www.wikidata.org/wiki/Q573952","display_name":"Lazy evaluation","level":3,"score":0.2930999994277954},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.28060001134872437},{"id":"https://openalex.org/C134835016","wikidata":"https://www.wikidata.org/wiki/Q690265","display_name":"Lookup table","level":2,"score":0.26190000772476196},{"id":"https://openalex.org/C98184364","wikidata":"https://www.wikidata.org/wiki/Q1780131","display_name":"Argument (complex analysis)","level":2,"score":0.26089999079704285},{"id":"https://openalex.org/C2778334786","wikidata":"https://www.wikidata.org/wiki/Q1586270","display_name":"Variation (astronomy)","level":2,"score":0.2596000134944916},{"id":"https://openalex.org/C182306322","wikidata":"https://www.wikidata.org/wiki/Q1779371","display_name":"Order (exchange)","level":2,"score":0.25619998574256897}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1109/tpds.2019.2960333","is_oa":true,"landing_page_url":"https://doi.org/10.1109/tpds.2019.2960333","pdf_url":"https://ieeexplore.ieee.org/ielx7/71/8965249/08936472.pdf","source":{"id":"https://openalex.org/S97130795","display_name":"IEEE Transactions on Parallel and Distributed Systems","issn_l":"1045-9219","issn":["1045-9219","1558-2183","2161-9883"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Parallel and Distributed Systems","raw_type":"journal-article"},{"id":"pmh:oai:arXiv.org:2001.09258","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2001.09258","pdf_url":"https://arxiv.org/pdf/2001.09258","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"}],"best_oa_location":{"id":"doi:10.1109/tpds.2019.2960333","is_oa":true,"landing_page_url":"https://doi.org/10.1109/tpds.2019.2960333","pdf_url":"https://ieeexplore.ieee.org/ielx7/71/8965249/08936472.pdf","source":{"id":"https://openalex.org/S97130795","display_name":"IEEE Transactions on Parallel and Distributed Systems","issn_l":"1045-9219","issn":["1045-9219","1558-2183","2161-9883"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319808","host_organization_name":"Institute of Electrical and Electronics Engineers","host_organization_lineage":["https://openalex.org/P4310319808"],"host_organization_lineage_names":["Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Parallel and Distributed Systems","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2995010870.pdf","grobid_xml":"https://content.openalex.org/works/W2995010870.grobid-xml"},"referenced_works_count":31,"referenced_works":["https://openalex.org/W1443365805","https://openalex.org/W1569291528","https://openalex.org/W1989584178","https://openalex.org/W1990721089","https://openalex.org/W2012407419","https://openalex.org/W2041998527","https://openalex.org/W2056595762","https://openalex.org/W2085592465","https://openalex.org/W2099063269","https://openalex.org/W2119352997","https://openalex.org/W2120901663","https://openalex.org/W2127594310","https://openalex.org/W2129393463","https://openalex.org/W2144481293","https://openalex.org/W2152289817","https://openalex.org/W2334723383","https://openalex.org/W2340076492","https://openalex.org/W2520139353","https://openalex.org/W2564030861","https://openalex.org/W2593628307","https://openalex.org/W2897675008","https://openalex.org/W3021837324","https://openalex.org/W3145750999","https://openalex.org/W4232621341","https://openalex.org/W4244894488","https://openalex.org/W4246166885","https://openalex.org/W6602581756","https://openalex.org/W6607059937","https://openalex.org/W6632396832","https://openalex.org/W6636153910","https://openalex.org/W6743412061"],"related_works":[],"abstract_inverted_index":{"In":[0,23,70],"this":[1],"article,":[2],"we":[3],"present":[4],"techniques":[5],"used":[6],"to":[7,25,72,128],"implement":[8],"our":[9,126],"portable":[10,29],"vectorized":[11],"library":[12,28,80,127],"of":[13,36,57,68,86,100,114],"C":[14,21],"standard":[15],"mathematical":[16],"functions":[17,35,43,50,107],"written":[18],"entirely":[19],"in":[20],"language.":[22],"order":[24,71],"make":[26,73],"the":[27,49,79,91,101,123],"while":[30],"maintaining":[31],"good":[32],"performance,":[33],"intrinsic":[34],"vector":[37,58,119],"extensions":[38,59],"are":[39,94,116],"abstracted":[40],"by":[41],"inline":[42],"or":[44],"preprocessor":[45],"macros.":[46],"We":[47,96,121],"implemented":[48],"so":[51],"that":[52],"they":[53],"can":[54],"use":[55],"sub-features":[56],"such":[60],"as":[61],"fused":[62],"multiply-add,":[63],"mask":[64],"registers,":[65],"and":[66,89,108],"extraction":[67],"mantissa.":[69],"computation":[74,92],"with":[75,125],"SIMD":[76],"instructions":[77],"efficient,":[78],"only":[81],"uses":[82],"a":[83,98,109],"small":[84],"number":[85],"conditional":[87],"branches,":[88],"all":[90],"paths":[93],"vectorized.":[95],"devised":[97],"variation":[99],"Payne-Hanek":[102],"argument":[103],"reduction":[104],"for":[105,118],"trigonometric":[106],"floating":[110],"point":[111],"remainder,":[112],"both":[113],"which":[115],"suitable":[117],"computation.":[120],"compare":[122],"performance":[124],"Intel":[129],"SVML.":[130]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":5},{"year":2023,"cited_by_count":7},{"year":2022,"cited_by_count":5},{"year":2021,"cited_by_count":5}],"updated_date":"2026-03-28T08:17:26.163206","created_date":"2019-12-26T00:00:00"}
