{"id":"https://openalex.org/W98678269","doi":null,"title":"Embedded Languages for Data-Parallel Programming","display_name":"Embedded Languages for Data-Parallel Programming","publication_year":2013,"publication_date":"2013-01-01","ids":{"openalex":"https://openalex.org/W98678269","mag":"98678269"},"language":"en","primary_location":{"id":"pmh:oai:publications.lib.chalmers.se:186941","doi":null,"is_oa":false,"landing_page_url":"http://publications.lib.chalmers.se/publication/186941-embedded-languages-for-data-parallel-programming","pdf_url":null,"source":{"id":"https://openalex.org/S4377196470","display_name":"Chalmers Publication Library (Chalmers University of Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I66862912","host_organization_name":"Chalmers University of Technology","host_organization_lineage":["https://openalex.org/I66862912"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text.Thesis.Doctoral"},"volume":null,"type":"dissertation","is_traditional":true,"indexed_in":[],"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/A5000031987","display_name":"Bo Joel Svensson","orcid":"https://orcid.org/0000-0003-0363-1206","observed_orcids":["https://orcid.org/0000-0003-0363-1206"]},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Joel Svensson","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":["https://openalex.org/A5000031987"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":2,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":null,"last_page":null},"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.9682999849319458,"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.9682999849319458,"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/T10126","display_name":"Logic, programming, and type systems","score":0.01769999973475933,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.011599999852478504,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/embedded-languages","display_name":"embedded languages","score":0.9769999980926514},{"id":"https://openalex.org/keywords/data-parallel-programming","display_name":"data-parallel programming","score":0.9950000047683716},{"id":"https://openalex.org/keywords/gpu-programming","display_name":"GPU programming","score":0.925000011920929},{"id":"https://openalex.org/keywords/obsidian","display_name":"obsidian","score":0.9229999780654907},{"id":"https://openalex.org/keywords/cuda","display_name":"CUDA","score":0.6179999709129333},{"id":"https://openalex.org/keywords/simd","display_name":"SIMD","score":0.6259999871253967},{"id":"https://openalex.org/keywords/multi-core-processors","display_name":"multi-core processors","score":0.49300000071525574},{"id":"https://openalex.org/keywords/reduction","display_name":"reduction","score":0.37400001287460327},{"id":"https://openalex.org/keywords/programming-abstractions","display_name":"programming abstractions","score":0.3930000066757202}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8540844917297363},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.684099555015564},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6523929834365845},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6343650221824646},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.5269354581832886},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.5206367373466492},{"id":"https://openalex.org/C61483411","wikidata":"https://www.wikidata.org/wiki/Q3124522","display_name":"Data parallelism","level":3,"score":0.5194699168205261},{"id":"https://openalex.org/C2778119891","wikidata":"https://www.wikidata.org/wiki/Q477690","display_name":"CUDA","level":2,"score":0.48330259323120117},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.46722090244293213},{"id":"https://openalex.org/C137364921","wikidata":"https://www.wikidata.org/wiki/Q27929394","display_name":"Parallel programming model","level":3,"score":0.4401395320892334},{"id":"https://openalex.org/C2781172179","wikidata":"https://www.wikidata.org/wiki/Q853109","display_name":"Parallelism (grammar)","level":2,"score":0.34390294551849365},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.2394234836101532}],"mesh":[],"locations_count":3,"locations":[{"id":"pmh:oai:publications.lib.chalmers.se:186941","doi":null,"is_oa":false,"landing_page_url":"http://publications.lib.chalmers.se/publication/186941-embedded-languages-for-data-parallel-programming","pdf_url":null,"source":{"id":"https://openalex.org/S4377196470","display_name":"Chalmers Publication Library (Chalmers University of Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I66862912","host_organization_name":"Chalmers University of Technology","host_organization_lineage":["https://openalex.org/I66862912"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text.Thesis.Doctoral"},{"id":"pmh:oai:research.chalmers.se:186941","doi":null,"is_oa":false,"landing_page_url":"https://research.chalmers.se/en/publication/186941","pdf_url":null,"source":{"id":"https://openalex.org/S4306402469","display_name":"Chalmers Research (Chalmers University of Technology)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"listed_in":[],"host_organization":"https://openalex.org/I66862912","host_organization_name":"Chalmers University of Technology","host_organization_lineage":["https://openalex.org/I66862912"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":null},{"id":"mag:98678269","doi":null,"is_oa":false,"landing_page_url":"https://research.chalmers.se/en/publication/186941","pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":null}],"best_oa_location":null,"sustainable_development_goals":[],"study_designs":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":79,"referenced_works":["https://openalex.org/W67010487","https://openalex.org/W100509257","https://openalex.org/W177779199","https://openalex.org/W641086946","https://openalex.org/W1485162873","https://openalex.org/W1486842216","https://openalex.org/W1502641600","https://openalex.org/W1514995960","https://openalex.org/W1523264534","https://openalex.org/W1535801212","https://openalex.org/W1548981521","https://openalex.org/W1596988140","https://openalex.org/W1597508330","https://openalex.org/W1598796492","https://openalex.org/W1650987719","https://openalex.org/W1780333029","https://openalex.org/W1875609239","https://openalex.org/W1979811002","https://openalex.org/W1995596660","https://openalex.org/W1996060755","https://openalex.org/W1997173622","https://openalex.org/W2000063321","https://openalex.org/W2003131643","https://openalex.org/W2005692853","https://openalex.org/W2014257084","https://openalex.org/W2018014973","https://openalex.org/W2032309817","https://openalex.org/W2048269379","https://openalex.org/W2049600101","https://openalex.org/W2055947235","https://openalex.org/W2056886075","https://openalex.org/W2058692170","https://openalex.org/W2064138295","https://openalex.org/W2083310717","https://openalex.org/W2085118703","https://openalex.org/W2088217310","https://openalex.org/W2095377417","https://openalex.org/W2096006817","https://openalex.org/W2100232637","https://openalex.org/W2100415730","https://openalex.org/W2100883156","https://openalex.org/W2104532741","https://openalex.org/W2104958979","https://openalex.org/W2105655245","https://openalex.org/W2109426995","https://openalex.org/W2113841249","https://openalex.org/W2118558147","https://openalex.org/W2130179171","https://openalex.org/W2131647018","https://openalex.org/W2136673842","https://openalex.org/W2138163628","https://openalex.org/W2141389982","https://openalex.org/W2147570319","https://openalex.org/W2148599839","https://openalex.org/W2150476673","https://openalex.org/W2161061943","https://openalex.org/W2163229756","https://openalex.org/W2163552400","https://openalex.org/W2164777241","https://openalex.org/W2165100134","https://openalex.org/W2165633563","https://openalex.org/W2166813996","https://openalex.org/W2167546526","https://openalex.org/W2169150396","https://openalex.org/W2169706947","https://openalex.org/W2170901118","https://openalex.org/W2171679530","https://openalex.org/W2174554963","https://openalex.org/W2244101089","https://openalex.org/W2258117687","https://openalex.org/W2294911930","https://openalex.org/W2407641568","https://openalex.org/W2436525433","https://openalex.org/W2558318611","https://openalex.org/W2739266613","https://openalex.org/W3103200974","https://openalex.org/W6888866778","https://openalex.org/W6903456810","https://openalex.org/W6944979850"],"related_works":["https://openalex.org/W7098054078","https://openalex.org/W7098332062","https://openalex.org/W1502641600","https://openalex.org/W7097727798","https://openalex.org/W1970976993","https://openalex.org/W2765359913","https://openalex.org/W7095675342","https://openalex.org/W183251975","https://openalex.org/W2299915687","https://openalex.org/W2259608377"],"abstract_inverted_index":{"Computers":[0],"today":[1],"are":[2,53,90,169,180,366],"becoming":[3],"more":[4,6,72,368],"and":[5,16,61,69,97,141,155,193,263,279,286,305,347,370],"parallel.":[7],"General":[8],"purpose":[9,58,125],"processors":[10,26,87],"(CPUs)":[11],"have":[12,354],"multiple":[13],"processing":[14],"cores":[15],"Single":[17],"Instruction":[18],"Multiple":[19],"Data":[20],"(SIMD)":[21],"units":[22],"for":[23,56,63,123,145,259,290],"data-parallelism.":[24],"Graphics":[25],"(GPUs)":[27],"bring":[28],"massive":[29],"parallelism":[30],"at":[31,115,269],"the":[32,113,152,156,201,211,232,239,277,283,302,350],"cost":[33],"of":[34,81,127,218,252,333],"being":[35],"harder":[36],"to":[37,47,83,106,110,112,131,171,213,242,249,297,301,308,318,373],"program":[38,85,212],"than":[39],"CPUs.":[40],"This":[41,186,273],"thesis":[42],"applies":[43],"embedded":[44,51,102,121],"language":[45,122,223],"methodology":[46],"data-parallel":[48,64],"programming.":[49],"Two":[50],"languages":[52,103],"presented,":[54],"Obsidian":[55,148,178,322,338,364],"general":[57,124],"GPU":[59,153],"programming":[60,65,126,149],"EmbArBB":[62,236,254],"across":[66],"platforms.":[67],"CPUs":[68],"GPUs":[70],"get":[71,289],"parallel":[73,335],"resources":[74],"with":[75],"each":[76],"new":[77],"generation.":[78],"The":[79,147,337],"question":[80],"how":[82],"efficiently":[84],"these":[86,173,299,342],"arises.":[88],"We":[89,129,353],"after":[91],"efficiency":[92],"both":[93],"in":[94,98,206,344,359],"programmer":[95,114,157,202,304,339],"productivity":[96,138],"application":[99],"performance.":[100,146],"Using":[101],"allows":[104],"us":[105],"experimentwith":[107],"what":[108],"abstractions":[109,140],"present":[111],"relatively":[116],"little":[117,270],"effort.Obsidian":[118],"is":[119,158,188,203,227,294,323,327],"an":[120,311],"GPUs.":[128],"try":[130],"strike":[132],"a":[133,191,216,220,228,246,250,256,295,306,319,331],"balance":[134],"between":[135],"high":[136],"level,":[137],"increasing":[139],"low-level":[142,207],"control":[143],"needed":[144],"model":[150],"mirrors":[151],"architecture":[154],"constrained":[159],"into":[160,182,261,282],"writing":[161],"GPU-friendly":[162],"code.":[163,185],"Hierarchy":[164],"level":[165,222],"polymorphic":[166],"library":[167,258],"functions":[168],"supplied":[170],"make":[172],"constraints":[174],"feel":[175],"less":[176],"obtrusive.":[177],"programs":[179,365],"compiled":[181],"CUDA":[183],"C":[184],"compilation":[187],"based":[189,329],"on":[190,238,330],"simple":[192],"elegant":[194],"monad":[195],"reification":[196],"technique.":[197],"In":[198],"cases":[199],"where":[200],"not":[204,328],"interested":[205],"details":[208],"or":[209,231],"wants":[210],"run":[214],"over":[215],"range":[217,251],"hardware,":[219],"higher":[221],"can":[224,340],"be":[225],"used.EmbArBB":[226],"Haskell":[229,262,303],"embedding":[230],"Intel":[233],"ArBB":[234,240,284,293],"system.":[235],"relies":[237],"system":[241,285,313],"generate":[243],"code":[244],"(via":[245],"Just-In-Time":[247],"compiler)":[248],"hardware.":[253],"embeds":[255],"preexisting":[257],"data-parallelism":[260],"we":[264,288],"obtain":[265],"very":[266,324,356],"good":[267,357],"performance":[268,274,358],"implementation":[271],"effort.":[272],"comes":[275],"from":[276],"expertise":[278],"effort":[280],"put":[281],"that":[287],"free.":[291],"Embedding":[292],"way":[296,307],"provide":[298],"benefits":[300],"increase":[309],"usefulnessof":[310],"existing":[312],"by":[314],"opening":[315],"it":[316,326],"up":[317],"wider":[320],"audience.":[321],"different;":[325],"set":[332],"high-level":[334],"primitives.":[336],"implement":[341],"primitives":[343],"different":[345],"ways":[346],"then":[348],"select":[349],"best":[351],"one.":[352],"obtained":[355],"case":[360],"studies":[361],"involving":[362],"reductions.":[363],"also":[367],"terse":[369],"composable,":[371],"compared":[372],"CUDA.":[374]},"counts_by_year":[{"year":2014,"cited_by_count":2}],"updated_date":"2026-11-11T12:16:26.678958","created_date":"2016-06-24T00:00:00"}
