{"id":"https://openalex.org/W2168894483","doi":"https://doi.org/10.1145/2162024.2162033","title":"Writing a modular GPGPU program in Java","display_name":"Writing a modular GPGPU program in Java","publication_year":2012,"publication_date":"2012-03-27","ids":{"openalex":"https://openalex.org/W2168894483","doi":"https://doi.org/10.1145/2162024.2162033","mag":"2168894483"},"language":"en","primary_location":{"id":"doi:10.1145/2162024.2162033","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2162024.2162033","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2012 workshop on Modularity in Systems Software","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/A5043866070","display_name":"Masayuki Ioki","orcid":null},"institutions":[],"countries":[],"is_corresponding":true,"raw_author_name":"Masayuki Ioki","raw_affiliation_strings":["Tokyo Institute of Technolory, Tokyo, Japan"],"affiliations":[{"raw_affiliation_string":"Tokyo Institute of Technolory, Tokyo, Japan","institution_ids":[]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5000897507","display_name":"Shumpei Hozumi","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Shumpei Hozumi","raw_affiliation_strings":["Tokyo Institute of Technolory, Tokyo, Japan"],"affiliations":[{"raw_affiliation_string":"Tokyo Institute of Technolory, Tokyo, Japan","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5026542200","display_name":"Shigeru Chiba","orcid":"https://orcid.org/0000-0001-9458-5713"},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Shigeru Chiba","raw_affiliation_strings":["Tokyo Institute of Technolory, Tokyo, Japan"],"affiliations":[{"raw_affiliation_string":"Tokyo Institute of Technolory, Tokyo, Japan","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5043866070"],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":0.5855,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":{"value":0.70142909,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"27","last_page":"32"},"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.9998999834060669,"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.9998999834060669,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.998199999332428,"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.9962999820709229,"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.8814268112182617},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.772972822189331},{"id":"https://openalex.org/keywords/java-bytecode","display_name":"Java bytecode","score":0.6789510846138},{"id":"https://openalex.org/keywords/cuda","display_name":"CUDA","score":0.6714419722557068},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6409060955047607},{"id":"https://openalex.org/keywords/bytecode","display_name":"Bytecode","score":0.6376843452453613},{"id":"https://openalex.org/keywords/modular-programming","display_name":"Modular programming","score":0.6210856437683105},{"id":"https://openalex.org/keywords/java-modeling-language","display_name":"Java Modeling Language","score":0.6082473397254944},{"id":"https://openalex.org/keywords/strictfp","display_name":"strictfp","score":0.5829383730888367},{"id":"https://openalex.org/keywords/java-annotation","display_name":"Java annotation","score":0.5538851618766785},{"id":"https://openalex.org/keywords/generics-in-java","display_name":"Generics in Java","score":0.5301286578178406},{"id":"https://openalex.org/keywords/real-time-java","display_name":"Real time Java","score":0.506492018699646},{"id":"https://openalex.org/keywords/general-purpose-computing-on-graphics-processing-units","display_name":"General-purpose computing on graphics processing units","score":0.48464852571487427},{"id":"https://openalex.org/keywords/just-in-time-compilation","display_name":"Just-in-time compilation","score":0.4457917809486389},{"id":"https://openalex.org/keywords/modular-design","display_name":"Modular design","score":0.4427640438079834},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.4253903031349182},{"id":"https://openalex.org/keywords/java-applet","display_name":"Java applet","score":0.41640448570251465},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.39136072993278503},{"id":"https://openalex.org/keywords/graphics","display_name":"Graphics","score":0.2619836926460266}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8814268112182617},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.772972822189331},{"id":"https://openalex.org/C2777472213","wikidata":"https://www.wikidata.org/wiki/Q137496","display_name":"Java bytecode","level":5,"score":0.6789510846138},{"id":"https://openalex.org/C2778119891","wikidata":"https://www.wikidata.org/wiki/Q477690","display_name":"CUDA","level":2,"score":0.6714419722557068},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6409060955047607},{"id":"https://openalex.org/C2779818221","wikidata":"https://www.wikidata.org/wiki/Q837330","display_name":"Bytecode","level":3,"score":0.6376843452453613},{"id":"https://openalex.org/C88482812","wikidata":"https://www.wikidata.org/wiki/Q6453666","display_name":"Modular programming","level":2,"score":0.6210856437683105},{"id":"https://openalex.org/C60945770","wikidata":"https://www.wikidata.org/wiki/Q2517517","display_name":"Java Modeling Language","level":5,"score":0.6082473397254944},{"id":"https://openalex.org/C174954855","wikidata":"https://www.wikidata.org/wiki/Q7623626","display_name":"strictfp","level":4,"score":0.5829383730888367},{"id":"https://openalex.org/C168702491","wikidata":"https://www.wikidata.org/wiki/Q567345","display_name":"Java annotation","level":4,"score":0.5538851618766785},{"id":"https://openalex.org/C172482141","wikidata":"https://www.wikidata.org/wiki/Q379273","display_name":"Generics in Java","level":5,"score":0.5301286578178406},{"id":"https://openalex.org/C132106392","wikidata":"https://www.wikidata.org/wiki/Q1373903","display_name":"Real time Java","level":3,"score":0.506492018699646},{"id":"https://openalex.org/C50630238","wikidata":"https://www.wikidata.org/wiki/Q971505","display_name":"General-purpose computing on graphics processing units","level":3,"score":0.48464852571487427},{"id":"https://openalex.org/C76782552","wikidata":"https://www.wikidata.org/wiki/Q110546","display_name":"Just-in-time compilation","level":3,"score":0.4457917809486389},{"id":"https://openalex.org/C101468663","wikidata":"https://www.wikidata.org/wiki/Q1620158","display_name":"Modular design","level":2,"score":0.4427640438079834},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.4253903031349182},{"id":"https://openalex.org/C15524039","wikidata":"https://www.wikidata.org/wiki/Q865817","display_name":"Java applet","level":3,"score":0.41640448570251465},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.39136072993278503},{"id":"https://openalex.org/C21442007","wikidata":"https://www.wikidata.org/wiki/Q1027879","display_name":"Graphics","level":2,"score":0.2619836926460266}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2162024.2162033","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2162024.2162033","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 2012 workshop on Modularity in Systems Software","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.636.9704","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.636.9704","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://www.csg.ci.i.u-tokyo.ac.jp/paper/miss05-ioki.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":8,"referenced_works":["https://openalex.org/W1494271578","https://openalex.org/W1951407292","https://openalex.org/W2021085621","https://openalex.org/W2024437592","https://openalex.org/W2093760065","https://openalex.org/W2097725675","https://openalex.org/W2171240827","https://openalex.org/W6641015488"],"related_works":["https://openalex.org/W1970806266","https://openalex.org/W2186011611","https://openalex.org/W2016474211","https://openalex.org/W2035069210","https://openalex.org/W1606351121","https://openalex.org/W3099706040","https://openalex.org/W1532887546","https://openalex.org/W4249764155","https://openalex.org/W1602642926","https://openalex.org/W1521580745"],"abstract_inverted_index":{"This":[0,51],"paper":[1],"proposes":[2],"a":[3,25,45,59,97],"Java":[4,38,60,98],"to":[5,34,103],"CUDA":[6,56],"runtime":[7],"program":[8,61,68,99],"translator":[9,30,52,80],"for":[10],"scientific-computing":[11],"applications.":[12],"Traditionally,":[13],"these":[14],"applications":[15,33],"have":[16],"been":[17],"written":[18,36,102],"in":[19,37,49,92],"Fortran":[20],"or":[21],"C":[22],"without":[23],"using":[24],"rich":[26,46],"modularization":[27,47],"mechanism.":[28],"Our":[29],"enables":[31],"those":[32],"be":[35,101],"and":[39,85],"run":[40],"on":[41],"GPGPUs":[42],"while":[43],"exploiting":[44,72],"mechanism":[48],"Java.":[50],"dynamically":[53],"generates":[54],"optimized":[55],"code":[57],"from":[58],"given":[62,76],"at":[63,77],"bytecode":[64],"level":[65],"when":[66],"the":[67,79],"is":[69],"running.":[70],"By":[71],"dynamic":[73,82],"type":[74],"information":[75],"translation,":[78],"devirtualizes":[81],"method":[83],"dispatches":[84],"flattens":[86],"objects":[87],"into":[88],"simple":[89],"data":[90],"representation":[91],"CUDA.":[93],"To":[94],"do":[95],"this,":[96],"must":[100],"satisfy":[104],"certain":[105],"constraints.":[106]},"counts_by_year":[{"year":2018,"cited_by_count":1},{"year":2015,"cited_by_count":1},{"year":2014,"cited_by_count":1}],"updated_date":"2026-04-05T17:49:38.594831","created_date":"2025-10-10T00:00:00"}
