Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REVIEW]: HealpixMPI.jl: an MPI-parallel implementation of the Healpix tessellation scheme in Julia #6467

Closed
editorialbot opened this issue Mar 11, 2024 · 86 comments
Assignees
Labels
accepted Julia published Papers published in JOSS recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 7 (CSISM) Computer science, Information Science, and Mathematics

Comments

@editorialbot
Copy link
Collaborator

editorialbot commented Mar 11, 2024

Submitting author: @LeeoBianchi (Leo Alessandro Bianchi)
Repository: https://github.com/LeeoBianchi/HealpixMPI.jl
Branch with paper.md (empty if default branch): JOSS-paper
Version: v1.0.0
Editor: @prashjha
Reviewers: @marcobonici, @baxmittens
Archive: 10.5281/zenodo.11192548

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/f012d3aa6c7cd644b8b9ecbe2c5a0aef"><img src="https://joss.theoj.org/papers/f012d3aa6c7cd644b8b9ecbe2c5a0aef/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/f012d3aa6c7cd644b8b9ecbe2c5a0aef/status.svg)](https://joss.theoj.org/papers/f012d3aa6c7cd644b8b9ecbe2c5a0aef)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@marcobonici & @baxmittens, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review.
First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @prashjha know.

Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest

Checklists

📝 Checklist for @marcobonici

📝 Checklist for @baxmittens

@editorialbot
Copy link
Collaborator Author

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1051/0004-6361/202346414 is OK
- 10.1086/427976 is OK
- 10.1086/425219 is OK
- 10.1051/0004-6361/201321494 is OK
- 10.21105/jcon.00068 is OK

MISSING DOIs

- No DOI given, and none found for title: Healpix.jl: Julia-only port of the HEALPix library
- No DOI given, and none found for title: DUCC

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

Software report:

github.com/AlDanial/cloc v 1.90  T=0.03 s (1289.2 files/s, 114571.8 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Julia                           22            399            493           1425
Markdown                         8            187              0            626
YAML                             5              8             12            106
TeX                              1              7              0             83
TOML                             2              6              0             25
-------------------------------------------------------------------------------
SUM:                            38            607            505           2265
-------------------------------------------------------------------------------

Commit count by author:

   115	LeeoBianchi
    39	Leo Alessandro Bianchi
     2	Leo A. Bianchi

@editorialbot
Copy link
Collaborator Author

Paper file info:

📄 Wordcount for paper.md is 1462

✅ The paper includes a Statement of need section

@editorialbot
Copy link
Collaborator Author

License info:

🟡 License found: GNU General Public License v2.0 (Check here for OSI approval)

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@prashjha
Copy link

Dear @marcobonici and @baxmittens, please read the first couple of comments in this thread and create your review checklist if you have not done so already. You can read the reviewer guidelines here. Also, you can browse the closed "REVIEW" issues on the "joss-reviews" repository to get some ideas on how to complete the reviews. Thank you!

@marcobonici
Copy link

marcobonici commented Mar 11, 2024

Review checklist for @marcobonici

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the https://github.com/LeeoBianchi/HealpixMPI.jl?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@LeeoBianchi) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

@baxmittens
Copy link

baxmittens commented Mar 12, 2024

Review checklist for @baxmittens

Conflict of interest

  • I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • Repository: Is the source code for this software available at the https://github.com/LeeoBianchi/HealpixMPI.jl?
  • License: Does the repository contain a plain-text LICENSE or COPYING file with the contents of an OSI approved software license?
  • Contribution and authorship: Has the submitting author (@LeeoBianchi) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines
  • Data sharing: If the paper contains original data, data are accessible to the reviewers. If the paper contains no original data, please check this item.
  • Reproducibility: If the paper contains original results, results are entirely reproducible by reviewers. If the paper contains no original results, please check this item.
  • Human and animal research: If the paper contains original data research on humans subjects or animals, does it comply with JOSS's human participants research policy and/or animal research policy? If the paper contains no such data, please check this item.

Functionality

  • Installation: Does installation proceed as outlined in the documentation?
  • Functionality: Have the functional claims of the software been confirmed?
  • Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • A statement of need: Does the paper have a section titled 'Statement of need' that clearly states what problems the software is designed to solve, who the target audience is, and its relation to other work?
  • State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

@baxmittens
Copy link

Hello @LeeoBianchi

is there a way I can confirm the performance claims you have made in this paper?
Can you guide me to a script, that I can run on my servers?

Greetz max

@LeeoBianchi
Copy link

LeeoBianchi commented Mar 18, 2024

Hello @LeeoBianchi

is there a way I can confirm the performance claims you have made in this paper? Can you guide me to a script, that I can run on my servers?

Greetz max

Hello @baxmittens,

Sure, here is a script I used to obtain the benchmark timings for the plot in my paper:

using MPI
using Healpix
using HealpixMPI
using BenchmarkTools
using DelimitedFiles
MPI.Init()

comm = MPI.COMM_WORLD
global crank = MPI.Comm_rank(comm)
global csize = MPI.Comm_size(comm)
root = 0

NSIDE = 4096
lmax = 3*NSIDE - 1

#initialize some Healpix data
if crank == root
    test_map = HealpixMap{Float64, RingOrder}(NSIDE)
    test_alm = Alm(lmax, lmax, [ComplexF64(i) for i in 1:numberOfAlms(lmax)])
else
    test_map = nothing
    test_alm = nothing
end

#distribute it into HealpixMPI types
d_map = DMap{RR}(comm)
MPI.Scatter!(test_map, d_map, comm)
d_alm = DAlm{RR}(comm)
MPI.Scatter!(test_alm, d_alm, comm)

#auxiliary optional legeandre coeffs arrays for more efficient SHTs
aux_alm_leg = Array{ComplexF64,3}(undef, (length(d_alm.info.mval), numOfRings(d_map.info.nside), 1)) # loc_nm * tot_nr
aux_map_leg = Array{ComplexF64,3}(undef, d_alm.info.mmax+1, length(d_map.info.rings), 1)

NTs = [2, 4, 8 , 16, 32] #different number of threads to run the benchmarks with.
ba2m = Vector{Float64}(undef, length(NTs)) #result arrays
bm2a = Vector{Float64}(undef, length(NTs)) #result arrays
#run benchmarks
for i in 1:length(NTs)
	println("alm2map benchmark for $csize MPI tasks and $(NTs[i]) C++ threads ...")
	global NT = NTs[i]
    b = @benchmark alm2map!(d_alm, d_map, aux_alm_leg, aux_map_leg; nthreads = NT) samples = 20 seconds = 600 evals = 1
    ba2m[i] = minimum(b.times) * NT * csize / 1e9 #in seconds
	println("adjoint_alm2map benchmark for $csize MPI tasks and $(NTs[i]) C++ threads ...")
    b = @benchmark adjoint_alm2map!(d_map, d_alm, aux_map_leg, aux_alm_leg; nthreads = NT) samples = 20 seconds = 600 evals = 1
    bm2a[i] = minimum(b.times) * NT * csize / 1e9 #in seconds
end
#print results
if crank == root
    outfile = "HpixMPI_a2m_full_Nside$(NSIDE)_$(csize)MPI_$(NT)threads.txt"
	writedlm(outfile, ba2m)
	outfile = "HpixMPI_adj_full_Nside$(NSIDE)_$(csize)MPI_$(NT)threads.txt"
	writedlm(outfile, bm2a)
end

Just drop a message if there is anything unclear and I will try to help you.

Thank you for undertaking this review process :)

Cheers,
Leo

@danielskatz
Copy link

Hi - as the track editor, I'm just stepping in briefly to suggest that this script might be added to the repo, and pointed to from the README or elsewhere.

@baxmittens
Copy link

baxmittens commented Apr 3, 2024

I have run the script on 1-4 MPI processes

HpixMPI_adj_full_Nside4096_1MPI_32threads.txt
61.425054444
67.324124836
66.981430832
68.79545176
73.325745312

HpixMPI_a2m_full_Nside4096_1MPI_32threads.txt
105.384205176
113.553485328
114.497209256
116.934635904
122.462031616

HpixMPI_adj_full_Nside4096_2MPI_32threads.txt
63.378890184
67.107265688
81.426459472
92.957265344
120.978923648

HpixMPI_a2m_full_Nside4096_2MPI_32threads.txt
106.813835852
114.115288024
129.216200368
150.261070752
170.98185888

HpixMPI_adj_full_Nside4096_3MPI_32threads.txt
64.932011886
70.056360972
83.512326096
102.962028768
151.741963968

HpixMPI_a2m_full_Nside4096_3MPI_32threads.txt
107.305189548
112.57675122
128.54376792
146.44734288
189.411806112

HpixMPI_adj_full_Nside4096_4MPI_32threads.txt
67.3199592
70.524248256
83.624625696
104.480749696
173.429741056

HpixMPI_a2m_full_Nside4096_4MPI_32threads.txt
107.487257936
112.815567168
130.402578976
146.577254784
197.771545088

@baxmittens
Copy link

baxmittens commented Apr 3, 2024

image image

@LeeoBianchi
Copy link

LeeoBianchi commented Apr 4, 2024

Hi @baxmittens, I can see you managed to run the benchmark script.

The plots you have obtained look comparable with mine on the paper, however I can see a quite steep jump between the 24(?) and 32-threads cases, especially in the adjoint transform.
This can be due to a few things. I'd be curious to know a few details about your set-up:

  • How many physical computing cores do your machines have?
  • What kind of connection is being used between the nodes?
  • Are the 4 machines identical to each other, at least in terms of CPU and connection?

Cheers,
Leo

@baxmittens
Copy link

Hi @LeeoBianchi

I just ran them locally on one node. That is ok, since I do not want to test MPI, right?

My System is

  • 2 x AMD EPYC 7763 64-Core Processor (á 64 Cores, Hyperthreading deactivated)
  • 4020 GB RAM

Therefore my timings are, as far as I can see, a little bit faster compared to yours.
I dunno if both CPUs have fast access to all the memory. Maybe therefore there is a jump in the wall time?

Greetz, Max

@LeeoBianchi
Copy link

I just ran them locally on one node. That is ok, since I do not want to test MPI, right?

Okay I see. Actually the way I conducted the benchmarks was to assign one MPI task to each node, so my benchmark also implied some time being spent for sending data over the cluster structure. That might explain your timings being a bit faster. Your test, however, is a good way to simulate what I have done, yes.

My System is

  • 2 x AMD EPYC 7763 64-Core Processor (á 64 Cores, Hyperthreading deactivated)
  • 4020 GB RAM

Therefore my timings are, as far as I can see, a little bit faster compared to yours. I dunno if both CPUs have fast access to all the memory. Maybe therefore there is a jump in the wall time?

I agree, the jump in the wall time could really look like a memory access matter to me, especially when using all the cores available at the same time.

Let me know if you have any further question to proceed with the review.

Cheers,
Leo

@baxmittens
Copy link

@LeeoBianchi

Did you notice that I commited a pull request for your paper.md?
LeeoBianchi/HealpixMPI.jl@a9cac76
I ran Grammarly on your paper. It has found a few commas missing and some other stuff. You can consider accepting some of these suggestions, but you don't have to. I found them quite helpful. But be careful since they were machine-generated.

@baxmittens
Copy link

@LeeoBianchi
I did not find Community guidelines

Community guidelines: Are there clear guidelines for third parties wishing to 

1) Contribute to the software 
2) Report issues or problems with the software 
3) Seek support

@marcobonici
Copy link

@LeeoBianchi I added a couple of comments, opening github issues as described here.
Additionally, would you mind expanding on the state-of-the-art for distributed SHT? I think I saw something based on Jax that was also GPU compatible, but I am not sure. THank you in advance! At the end of this week I should be able to run your code, so I can finish my review.

@LeeoBianchi
Copy link

LeeoBianchi commented Apr 11, 2024

@baxmittens @marcobonici I apologize for the delay in my replies, but things have been quite hectic lately at work. I promise I will get back to this review as soon as possible, hopefully already this weekend.
Thank you!

@LeeoBianchi
Copy link

@LeeoBianchi I added a couple of comments, opening github issues as described here. Additionally, would you mind expanding on the state-of-the-art for distributed SHT? I think I saw something based on Jax that was also GPU compatible, but I am not sure. THank you in advance! At the end of this week I should be able to run your code, so I can finish my review.

By expanding do you mean to provide some more details here, or to add something in the paper?

@LeeoBianchi
Copy link

@LeeoBianchi I did not find Community guidelines

Community guidelines: Are there clear guidelines for third parties wishing to 

1) Contribute to the software 
2) Report issues or problems with the software 
3) Seek support

I think you're right. I gave for granted the standard GitHub procedures/tools would have been used. Should I specify that on the Readme of the repository?

@baxmittens
Copy link

I think you're right. I gave for granted the standard GitHub procedures/tools would have been used. Should I specify that on the Readme of the repository?

I think that's what the JOSS guidelines prescribe. Just take any other Joss-reviewed repository like

https://github.com/gdalle/HiddenMarkovModels.jl

as a reference.

@editorialbot
Copy link
Collaborator Author

Done! archive is now 10.5281/zenodo.11192548

@prashjha
Copy link

@editorialbot generate pdf

@editorialbot
Copy link
Collaborator Author

👉📄 Download article proof 📄 View article proof on GitHub 📄 👈

@prashjha
Copy link

@LeeoBianchi, thank you. Moving to the next and final stage for publication.

Thank you, @marcobonici and @baxmittens, for your time and efforts in reviewing this work for JOSS. I appreciate it.

@prashjha
Copy link

@editorialbot recommend-accept

@editorialbot
Copy link
Collaborator Author

Attempting dry run of processing paper acceptance...

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1051/0004-6361/202346414 is OK
- 10.1086/427976 is OK
- 10.1086/425219 is OK
- 10.1051/0004-6361/201321494 is OK
- 10.21105/jcon.00068 is OK
- 10.21105/astro.2210.13260 is OK

MISSING DOIs

- No DOI given, and none found for title: Healpix.jl: Julia-only port of the HEALPix library
- No DOI given, and none found for title: DUCC
- No DOI given, and none found for title: Euclid preparation: XXVIII. Modelling of the weak ...

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👋 @openjournals/csism-eics, this paper is ready to be accepted and published.

Check final proof 👉📄 Download article

If the paper PDF and the deposit XML files look good in openjournals/joss-papers#5354, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

@editorialbot editorialbot added the recommend-accept Papers recommended for acceptance in JOSS. label May 17, 2024
@danielskatz
Copy link

danielskatz commented May 17, 2024

@LeeoBianchi - As track editor, I've proofread the paper and suggested changes in LeeoBianchi/HealpixMPI.jl#10.

In addition, something is wrong with the grammar of the second sentence of the summary, and I can't suggest a fix because I'm a little unsure what the intent of the sentence is. Another issue is that SHT sometimes is used for SHTs, and sometimes SHTs is used. I suggest using SHT for one, and SHTs for multiple, consistently through the paper.

Please let me know when the PR is merged (or what you disagree with), and when you have addressed the other two points, then we can proceed to publication.

@LeeoBianchi
Copy link

LeeoBianchi commented May 17, 2024

@LeeoBianchi - As track editor, I've proofread the paper and suggested changes in LeeoBianchi/HealpixMPI.jl#10.

In addition, something is wrong with the grammar of the second sentence of the summary, and I can't suggest a fix because I'm a little unsure what the intent of the sentence is. Another issue is that SHT sometimes is used for SHTs, and sometimes SHTs is used. I suggest using SHT for one, and SHTs for multiple, consistently through the paper.

Please let me know when the PR is merged (or what you disagree with), and when you have addressed the other two points, then we can proceed to publication.

Hi, thank you for proofreading my paper. I merged your PR as all the changes proposed looked good.

I tried to rephrase the sentence you pointed out, I hope it is more clear now.

You were right about the SHT/SHTs issue, I think grammarly messed up most of them, I should have fixed that too.

I pushed alle the fixes in a new commit, let me know I should fix anything else.

Cheers

@danielskatz
Copy link

I've added some comments in your commit

@LeeoBianchi
Copy link

I've added some comments in your commit

I should have implemented all the proposed changes. Thank you!

@danielskatz
Copy link

I've added one more small comment on LeeoBianchi/HealpixMPI.jl@dc177d0 - once this is fixed, I think we'll be ready to go.

@LeeoBianchi
Copy link

I've added one more small comment on LeeoBianchi/HealpixMPI.jl@dc177d0 - once this is fixed, I think we'll be ready to go.

Done!

@danielskatz
Copy link

@editorialbot recommend-accept

@editorialbot
Copy link
Collaborator Author

Attempting dry run of processing paper acceptance...

@editorialbot
Copy link
Collaborator Author

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1051/0004-6361/202346414 is OK
- 10.1086/427976 is OK
- 10.1086/425219 is OK
- 10.1051/0004-6361/201321494 is OK
- 10.21105/jcon.00068 is OK
- 10.21105/astro.2210.13260 is OK

MISSING DOIs

- No DOI given, and none found for title: Healpix.jl: Julia-only port of the HEALPix library
- No DOI given, and none found for title: DUCC
- No DOI given, and none found for title: Euclid preparation: XXVIII. Modelling of the weak ...

INVALID DOIs

- None

@editorialbot
Copy link
Collaborator Author

👋 @openjournals/csism-eics, this paper is ready to be accepted and published.

Check final proof 👉📄 Download article

If the paper PDF and the deposit XML files look good in openjournals/joss-papers#5358, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

@danielskatz
Copy link

@editorialbot accept

@editorialbot
Copy link
Collaborator Author

Doing it live! Attempting automated processing of paper acceptance...

@editorialbot
Copy link
Collaborator Author

Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository.

If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file.

You can copy the contents for your CITATION.cff file here:

CITATION.cff

cff-version: "1.2.0"
authors:
- family-names: Bianchi
  given-names: Leo A.
  orcid: "https://orcid.org/0009-0002-6351-5426"
doi: 10.5281/zenodo.11192548
message: If you use this software, please cite our article in the
  Journal of Open Source Software.
preferred-citation:
  authors:
  - family-names: Bianchi
    given-names: Leo A.
    orcid: "https://orcid.org/0009-0002-6351-5426"
  date-published: 2024-05-20
  doi: 10.21105/joss.06467
  issn: 2475-9066
  issue: 97
  journal: Journal of Open Source Software
  publisher:
    name: Open Journals
  start: 6467
  title: "HealpixMPI.jl: an MPI-parallel implementation of the Healpix
    tessellation scheme in Julia"
  type: article
  url: "https://joss.theoj.org/papers/10.21105/joss.06467"
  volume: 9
title: "HealpixMPI.jl: an MPI-parallel implementation of the Healpix
  tessellation scheme in Julia"

If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation.

Find more information on .cff files here and here.

@editorialbot
Copy link
Collaborator Author

🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘

@editorialbot
Copy link
Collaborator Author

🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨

Here's what you must now do:

  1. Check final PDF and Crossref metadata that was deposited 👉 Creating pull request for 10.21105.joss.06467 joss-papers#5359
  2. Wait five minutes, then verify that the paper DOI resolves https://doi.org/10.21105/joss.06467
  3. If everything looks good, then close this review issue.
  4. Party like you just published a paper! 🎉🌈🦄💃👻🤘

Any issues? Notify your editorial technical team...

@editorialbot editorialbot added accepted published Papers published in JOSS labels May 20, 2024
@danielskatz
Copy link

Congratulations to @LeeoBianchi (Leo Alessandro Bianchi) on your publication!!

And thanks to @marcobonici and @baxmittens for reviewing, and to @prashjha for editing!
JOSS depends on volunteers and we couldn't do it without you

@editorialbot
Copy link
Collaborator Author

🎉🎉🎉 Congratulations on your paper acceptance! 🎉🎉🎉

If you would like to include a link to your paper from your README use the following code snippets:

Markdown:
[![DOI](https://joss.theoj.org/papers/10.21105/joss.06467/status.svg)](https://doi.org/10.21105/joss.06467)

HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.06467">
  <img src="https://joss.theoj.org/papers/10.21105/joss.06467/status.svg" alt="DOI badge" >
</a>

reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.06467/status.svg
   :target: https://doi.org/10.21105/joss.06467

This is how it will look in your documentation:

DOI

We need your help!

The Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:

@LeeoBianchi
Copy link

Many thanks @danielskatz @prashjha @marcobonici @baxmittens for your time to review my paper!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted Julia published Papers published in JOSS recommend-accept Papers recommended for acceptance in JOSS. review TeX Track: 7 (CSISM) Computer science, Information Science, and Mathematics
Projects
None yet
Development

No branches or pull requests

7 participants