{"id":"https://openalex.org/W2329015553","doi":"https://doi.org/10.1145/2872362.2876511","title":"Programmer Productivity in a World of Mushy Interfaces","display_name":"Programmer Productivity in a World of Mushy Interfaces","publication_year":2016,"publication_date":"2016-03-25","ids":{"openalex":"https://openalex.org/W2329015553","doi":"https://doi.org/10.1145/2872362.2876511","mag":"2329015553"},"language":"en","primary_location":{"id":"doi:10.1145/2872362.2876511","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2872362.2876511","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems","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/A5004286577","display_name":"Emmett Witchel","orcid":"https://orcid.org/0000-0002-1391-2880"},"institutions":[{"id":"https://openalex.org/I86519309","display_name":"The University of Texas at Austin","ror":"https://ror.org/00hj54h04","country_code":"US","type":"education","lineage":["https://openalex.org/I86519309"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Emmett Witchel","raw_affiliation_strings":["The University of Texas at Austin, Austin, TX, USA"],"affiliations":[{"raw_affiliation_string":"The University of Texas at Austin, Austin, TX, USA","institution_ids":["https://openalex.org/I86519309"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":1,"corresponding_author_ids":["https://openalex.org/A5004286577"],"corresponding_institution_ids":["https://openalex.org/I86519309"],"apc_list":null,"apc_paid":null,"fwci":0.0,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":{"value":0.02259058,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"591","last_page":"591"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.998199999332428,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10715","display_name":"Distributed and Parallel Computing Systems","score":0.998199999332428,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9959999918937683,"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.9890999794006348,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/porting","display_name":"Porting","score":0.847510814666748},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8313608169555664},{"id":"https://openalex.org/keywords/software-portability","display_name":"Software portability","score":0.7623786330223083},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.5704827308654785},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.5598886609077454},{"id":"https://openalex.org/keywords/computer-architecture","display_name":"Computer architecture","score":0.5432906746864319},{"id":"https://openalex.org/keywords/cuda","display_name":"CUDA","score":0.5375819206237793},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.4994852542877197},{"id":"https://openalex.org/keywords/abstraction","display_name":"Abstraction","score":0.48088720440864563},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.4573071300983429},{"id":"https://openalex.org/keywords/abstraction-layer","display_name":"Abstraction layer","score":0.4448275864124298},{"id":"https://openalex.org/keywords/instruction-set","display_name":"Instruction set","score":0.4388469457626343},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.40692275762557983},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.3405119776725769},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.3109448552131653},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.2941403388977051}],"concepts":[{"id":"https://openalex.org/C106251023","wikidata":"https://www.wikidata.org/wiki/Q851989","display_name":"Porting","level":3,"score":0.847510814666748},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8313608169555664},{"id":"https://openalex.org/C63000827","wikidata":"https://www.wikidata.org/wiki/Q3080428","display_name":"Software portability","level":2,"score":0.7623786330223083},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.5704827308654785},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.5598886609077454},{"id":"https://openalex.org/C118524514","wikidata":"https://www.wikidata.org/wiki/Q173212","display_name":"Computer architecture","level":1,"score":0.5432906746864319},{"id":"https://openalex.org/C2778119891","wikidata":"https://www.wikidata.org/wiki/Q477690","display_name":"CUDA","level":2,"score":0.5375819206237793},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.4994852542877197},{"id":"https://openalex.org/C124304363","wikidata":"https://www.wikidata.org/wiki/Q673661","display_name":"Abstraction","level":2,"score":0.48088720440864563},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.4573071300983429},{"id":"https://openalex.org/C147358964","wikidata":"https://www.wikidata.org/wiki/Q1200992","display_name":"Abstraction layer","level":3,"score":0.4448275864124298},{"id":"https://openalex.org/C202491316","wikidata":"https://www.wikidata.org/wiki/Q272683","display_name":"Instruction set","level":2,"score":0.4388469457626343},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.40692275762557983},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.3405119776725769},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3109448552131653},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.2941403388977051},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/2872362.2876511","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2872362.2876511","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems","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":0,"referenced_works":[],"related_works":["https://openalex.org/W2621501241","https://openalex.org/W2208757713","https://openalex.org/W3177128669","https://openalex.org/W2991848348","https://openalex.org/W2092972055","https://openalex.org/W4236300446","https://openalex.org/W4213087105","https://openalex.org/W2102103803","https://openalex.org/W4233731870","https://openalex.org/W4388405478"],"abstract_inverted_index":{"Since":[0],"1964,":[1],"we":[2,82],"had":[3],"the":[4,7,38,47],"notion":[5],"that":[6],"instruction":[8],"set":[9],"architecture":[10],"(ISA)":[11],"is":[12,40,93,100],"a":[13],"useful":[14],"and":[15,22,63,95,121,124],"fairly":[16],"opaque":[17],"abstraction":[18,48],"layer":[19],"between":[20],"hardware":[21],"software.":[23],"Software":[24],"rode":[25],"hardware's":[26,34],"performance":[27],"wave":[28],"while":[29],"remaining":[30],"gloriously":[31],"oblivious":[32],"to":[33,56,97],"growing":[35],"complexity.":[36],"Unfortunately,":[37],"jig":[39],"up.":[41],"We":[42,73],"still":[43],"have":[44,104],"ISAs,":[45],"but":[46],"no":[49],"longer":[50],"offers":[51],"seamless":[52],"portability---parallel":[53],"software":[54,88],"needs":[55],"be":[57],"tuned":[58],"for":[59],"different":[60],"core":[61],"counts,":[62],"heterogeneous":[64,79],"processing":[65],"elements":[66],"(CPUs,":[67],"GPUs,":[68],"accelerators)":[69],"further":[70],"complicate":[71],"programmability.":[72],"are":[74,83],"better":[75],"at":[76,84],"building":[77],"large-scale":[78],"processors":[80],"than":[81],"programming":[85,115],"them.":[86],"Maintaining":[87],"across":[89],"multiple":[90],"current":[91],"platforms":[92,99],"difficult":[94],"porting":[96],"future":[98],"also":[101],"difficult.":[102],"There":[103],"been":[105],"many":[106],"technical":[107],"responses:":[108],"virtual":[109],"ISAs":[110],"(e.g.,":[111,117,127],"NVIDIA's":[112],"PTX),":[113],"higher-level":[114],"interfaces":[116],"CUDA":[118],"or":[119],"OpenCL),":[120],"late-stage":[122],"compilation":[123],"platform-specific":[125],"tailoring":[126],"Android":[128],"ART),":[129],"etc.":[130]},"counts_by_year":[],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
