{"id":"https://openalex.org/W6929279644","doi":"https://doi.org/10.48550/arxiv.2407.13712","title":"Enabling MPI communication within Numba/LLVM JIT-compiled Python code using numba-mpi v1.0","display_name":"Enabling MPI communication within Numba/LLVM JIT-compiled Python code using numba-mpi v1.0","publication_year":2024,"publication_date":"2024-07-01","ids":{"openalex":"https://openalex.org/W6929279644","doi":"https://doi.org/10.48550/arxiv.2407.13712"},"language":"en","primary_location":{"id":"doi:10.48550/arxiv.2407.13712","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2407.13712","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"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":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"article-journal"},"type":"preprint","indexed_in":["datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://doi.org/10.48550/arxiv.2407.13712","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Derlatka, Kacper","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Derlatka, Kacper","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":null,"display_name":"Manna, Maciej","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Manna, Maciej","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":null,"display_name":"Bulenok, Oleksii","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Bulenok, Oleksii","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"middle","author":{"id":null,"display_name":"Zwicker, David","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Zwicker, David","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]},{"author_position":"last","author":{"id":null,"display_name":"Arabas, Sylwester","orcid":null},"institutions":[],"countries":[],"is_corresponding":false,"raw_author_name":"Arabas, Sylwester","raw_affiliation_strings":[],"raw_orcid":null,"affiliations":[]}],"institutions":[],"countries_distinct_count":0,"institutions_distinct_count":0,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":0,"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":true,"primary_topic":{"id":"https://openalex.org/T10885","display_name":"Gene expression and cancer classification","score":0.15160000324249268,"subfield":{"id":"https://openalex.org/subfields/1312","display_name":"Molecular Biology"},"field":{"id":"https://openalex.org/fields/13","display_name":"Biochemistry, Genetics and Molecular Biology"},"domain":{"id":"https://openalex.org/domains/1","display_name":"Life Sciences"}},"topics":[{"id":"https://openalex.org/T10885","display_name":"Gene expression and cancer classification","score":0.15160000324249268,"subfield":{"id":"https://openalex.org/subfields/1312","display_name":"Molecular Biology"},"field":{"id":"https://openalex.org/fields/13","display_name":"Biochemistry, Genetics and Molecular Biology"},"domain":{"id":"https://openalex.org/domains/1","display_name":"Life Sciences"}},{"id":"https://openalex.org/T10301","display_name":"Mitochondrial Function and Pathology","score":0.039400000125169754,"subfield":{"id":"https://openalex.org/subfields/1312","display_name":"Molecular Biology"},"field":{"id":"https://openalex.org/fields/13","display_name":"Biochemistry, Genetics and Molecular Biology"},"domain":{"id":"https://openalex.org/domains/1","display_name":"Life Sciences"}},{"id":"https://openalex.org/T10334","display_name":"Hearing, Cochlea, Tinnitus, Genetics","score":0.03880000114440918,"subfield":{"id":"https://openalex.org/subfields/2809","display_name":"Sensory Systems"},"field":{"id":"https://openalex.org/fields/28","display_name":"Neuroscience"},"domain":{"id":"https://openalex.org/domains/1","display_name":"Life Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/python","display_name":"Python (programming language)","score":0.8752999901771545},{"id":"https://openalex.org/keywords/debugging","display_name":"Debugging","score":0.5307000279426575},{"id":"https://openalex.org/keywords/initialization","display_name":"Initialization","score":0.5235000252723694},{"id":"https://openalex.org/keywords/workflow","display_name":"Workflow","score":0.5074999928474426},{"id":"https://openalex.org/keywords/source-code","display_name":"Source code","score":0.4828999936580658},{"id":"https://openalex.org/keywords/message-passing","display_name":"Message passing","score":0.3474000096321106},{"id":"https://openalex.org/keywords/source-lines-of-code","display_name":"Source lines of code","score":0.3224000036716461},{"id":"https://openalex.org/keywords/fortran","display_name":"Fortran","score":0.32089999318122864},{"id":"https://openalex.org/keywords/scripting-language","display_name":"Scripting language","score":0.3158999979496002}],"concepts":[{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.8752999901771545},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8385999798774719},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6169999837875366},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.538100004196167},{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.5307000279426575},{"id":"https://openalex.org/C114466953","wikidata":"https://www.wikidata.org/wiki/Q6034165","display_name":"Initialization","level":2,"score":0.5235000252723694},{"id":"https://openalex.org/C177212765","wikidata":"https://www.wikidata.org/wiki/Q627335","display_name":"Workflow","level":2,"score":0.5074999928474426},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.4828999936580658},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.3497999906539917},{"id":"https://openalex.org/C854659","wikidata":"https://www.wikidata.org/wiki/Q1859284","display_name":"Message passing","level":2,"score":0.3474000096321106},{"id":"https://openalex.org/C199519371","wikidata":"https://www.wikidata.org/wiki/Q942695","display_name":"Source lines of code","level":3,"score":0.3224000036716461},{"id":"https://openalex.org/C2778241615","wikidata":"https://www.wikidata.org/wiki/Q83303","display_name":"Fortran","level":2,"score":0.32089999318122864},{"id":"https://openalex.org/C61423126","wikidata":"https://www.wikidata.org/wiki/Q187432","display_name":"Scripting language","level":2,"score":0.3158999979496002},{"id":"https://openalex.org/C162319229","wikidata":"https://www.wikidata.org/wiki/Q175263","display_name":"Data structure","level":2,"score":0.31459999084472656},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.3116999864578247},{"id":"https://openalex.org/C85687889","wikidata":"https://www.wikidata.org/wiki/Q445962","display_name":"Legacy code","level":3,"score":0.3052000105381012},{"id":"https://openalex.org/C166782233","wikidata":"https://www.wikidata.org/wiki/Q127879","display_name":"Message Passing Interface","level":3,"score":0.3046000003814697},{"id":"https://openalex.org/C47487241","wikidata":"https://www.wikidata.org/wiki/Q5227230","display_name":"Data access","level":2,"score":0.28519999980926514},{"id":"https://openalex.org/C89505385","wikidata":"https://www.wikidata.org/wiki/Q47146","display_name":"User interface","level":2,"score":0.27970001101493835},{"id":"https://openalex.org/C37789001","wikidata":"https://www.wikidata.org/wiki/Q782543","display_name":"Graphical user interface","level":2,"score":0.2759999930858612},{"id":"https://openalex.org/C3018397939","wikidata":"https://www.wikidata.org/wiki/Q3644502","display_name":"Open source","level":3,"score":0.26409998536109924},{"id":"https://openalex.org/C113843644","wikidata":"https://www.wikidata.org/wiki/Q901882","display_name":"Interface (matter)","level":4,"score":0.2637999951839447},{"id":"https://openalex.org/C198880260","wikidata":"https://www.wikidata.org/wiki/Q5289813","display_name":"Domain decomposition methods","level":3,"score":0.2599000036716461},{"id":"https://openalex.org/C459310","wikidata":"https://www.wikidata.org/wiki/Q117801","display_name":"Computational science","level":1,"score":0.2558000087738037},{"id":"https://openalex.org/C52723943","wikidata":"https://www.wikidata.org/wiki/Q1127410","display_name":"Serialization","level":2,"score":0.25440001487731934},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.25099998712539673}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.48550/arxiv.2407.13712","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2407.13712","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"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":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"article-journal"}],"best_oa_location":{"id":"doi:10.48550/arxiv.2407.13712","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2407.13712","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":"2331-8422","issn":["2331-8422"],"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":null,"is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"article-journal"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":0,"referenced_works":[],"related_works":[],"abstract_inverted_index":{"The":[0,72,128,164,191],"numba-mpi":[1,58,73,196,220],"package":[2,135,165],"offers":[3],"access":[4],"to":[5,53,198],"the":[6,17,37,46,63,67,80,106,134,143,209,216],"Message":[7],"Passing":[8],"Interface":[9],"(MPI)":[10],"routines":[11,146,189],"from":[12],"Python":[13,28,51,170],"code":[14,29,39,64,210],"that":[15,238],"uses":[16],"Numba":[18],"just-in-time":[19],"(JIT)":[20],"compiler.":[21],"As":[22,140],"a":[23,49,76,185,203],"result,":[24],"high-performance":[25],"and":[26,85,124,138,149,171,176,183,243],"multi-threaded":[27],"may":[30],"utilize":[31],"MPI":[32,84,145],"communication":[33],"facilities":[34],"without":[35],"leaving":[36],"JIT-compiled":[38],"blocks,":[40],"which":[41],"is":[42,70,86,101,166,200,232],"not":[43],"possible":[44],"with":[45,202,206],"mpi4py":[47,177,199],"package,":[48],"higher-level":[50],"interface":[52],"MPI.":[54],"For":[55],"debugging":[56],"purposes,":[57],"retains":[59],"full":[60],"functionality":[61],"of":[62,83,93,133,141,187,194,208,219],"even":[65],"if":[66],"JIT":[68],"compilation":[69],"disabled.":[71],"API":[74,82],"constitutes":[75],"thin":[77],"wrapper":[78],"around":[79,88],"C":[81],"built":[87],"Numpy":[89],"arrays":[90],"including":[91],"handling":[92,222],"non-contiguous":[94],"views":[95],"over":[96],"array":[97],"slices.":[98],"Project":[99],"development":[100],"hosted":[102],"at":[103,181],"GitHub":[104],"leveraging":[105],"mpi4py/setup-mpi":[107],"workflow":[108],"enabling":[109],"continuous":[110],"integration":[111],"tests":[112],"on":[113,173,240],"Linux":[114],"(MPICH,":[115],"OpenMPI":[116],"&":[117,122,162],"Intel":[118],"MPI),":[119],"macOS":[120],"(MPICH":[121],"OpenMPI)":[123],"Windows":[125],"(MS":[126],"MPI).":[127],"paper":[129],"covers":[130],"an":[131],"overview":[132],"features,":[136],"architecture":[137],"performance.":[139],"v1.0,":[142],"following":[144],"are":[147],"exposed":[148],"covered":[150],"by":[151],"unit":[152],"tests:":[153],"size/rank,":[154],"[i]send/[i]recv,":[155],"wait[all|any],":[156],"test[all|any],":[157],"allreduce,":[158],"bcast,":[159],"barrier,":[160],"scatter/[all]gather":[161],"wtime.":[163],"implemented":[167],"in":[168,212,215,225],"pure":[169],"depends":[172],"numpy,":[174],"numba":[175],"(the":[178],"latter":[179],"used":[180],"initialization":[182],"as":[184],"source":[186],"utility":[188],"only).":[190],"performance":[192],"advantage":[193],"using":[195,234],"compared":[197],"depicted":[201],"simple":[204],"example,":[205],"entirety":[207],"included":[211],"listings":[213],"discussed":[214],"text.":[217],"Application":[218],"for":[221,228],"domain":[223],"decomposition":[224],"numerical":[226],"solvers":[227],"partial":[229],"differential":[230],"equations":[231],"presented":[233],"two":[235],"external":[236],"packages":[237],"depend":[239],"numba-mpi:":[241],"py-pde":[242],"PyMPDATA-MPI.":[244]},"counts_by_year":[],"updated_date":"2026-08-21T09:56:20.448147","created_date":"2025-10-10T00:00:00"}
