Thanks to the organizers, presenters and participants for an informative and enjoyable event. We had 101 registrations, 39 in-person, 62 online via Zoom as part of the lineup of local JuliaCon meetups. We cordially invite the community to JuliaCon with events going on from July 19th to July 29th, please see the full schedule here. Registration is free.
For those interested in Julia for High-Performance Computing (HPC) we invite participants to the Julia for HPC Minisymposium at JuliaCon to learn more about community efforts in HPC, Requires registration to JuliaCon.
The link to the tutorial and presentations are now posted in the agenda section below. Please feel free to reach out to the organizers, presenters, and participants to continue building the community inside ORNL. Thanks!
The Julia programming language is a modern open-source Domain-Specific-Language (DSL) for science. Built for performance as a front-end to LLVM, Julia attempts to challenge the status-quo in which dynamic languages can't reach desirable levels of performance, while the use of traditional compiled languages C, C++ and Fortran can be a costly development and maintenance investment for scientific projects. Julia builds upon the sucess of Fortran as the out-of-the-box abstraction for multidimensional arrays and math, while providing a powerful high-level interface for data analysis, visualization and interactive computing (the Julia REPL, and the Ju in Jupyter). In addition, several aspects that traditionally belong to a language ecosystem are core aspects of Julia: packaging, reproducible environments, and powerful macros metaprogramming for code instrumentation (profiling, testing, etc.) and interoperability with existing Fortran and C interfaces. Thus, Julia provides an interesting investment when trying to find a balance between development costs and scientific discovery.
Aims and Scope
The Julia for ORNL Science Workshop, JuFOS, invites the scientific community to share current challenges and opportunities in building, maintaining and deploying complex scientific workflows combining multiple programming languages, libraries, ecosystem. The goal is to provide a venue to exchange research and development ideas about current state-of-the-art development of scientific codes at ORNL and potential collaborations and investments around a relatively new language designed for science. We welcome applications from the wide range of experimental, observational, high-performance computing (HPC) projects at ORNL. We will summarize our ideas, findings and key opportunities in a subsequent report that we will share with the community and interested participants.
While this is a hybrid event, we encourage in-person participation for the tutorial, working lunch session, lightning talks and birds-of-a-feather (BoF) discussion to learn more about the language and its community. In addition, JuFOS is serving as a local meetup to the virtual JuliaCon 2022 July 27th-29th, so we invite potential ORNL presenters at JuliaCon to share their work with the lab community.
Registration Link: Please register by July 15th here.
Registration is still open for virtual participation until July 15th, in-person registration is closed
The registration form includes the option to propose a lightning talk.
- Registration is required for in-person and virtual meeting option via Zoom
- We encourage early registration for in-person participation due to the venue’s limited capacity (closed)
Call for Lightning Talks
We invite ORNL participants to present a 3 to 5 minute lightning talk that aligns with the scope of the workshop (option provided in the registration form).
- Experiences using Julia in experimental, observational science
- Experiences using Julia in heterogeneous HPC (CPU, GPU, network, I/O, etc.)
- Existing codesign challenges in C, C++, Fortran, Python: packaging, performance, composition, programming models
- Status and roadmap of languages for scientific computing
- Artificial Intelligence, Machine Learning (AI/ML) workflows
- Experiences with high-level languages (Python, R, Julia) in HPC
- Ecosystems for Reproducibility and Performance Portability
- Community codes written in Julia
- Julia as a language for teaching computational science concepts
- Interactive data analysis and visualization (Jupyter, Pluto.jl)
- Julia for research software engineering
- High-level languages for rapid prototyping
Click on the links for the slides
|10:00am-12:00pm||Intro to Julia [examples repo] [notebooks]||Philip Fackler, William Godoy|
|12:20pm-12:25pm||Opening Remarks||Jeffrey Vetter|
|12:25pm-1:00pm||Julia status, community and opportunities||William Godoy|
|1:10pm-2:30pm||Lightning Talks Session (5 min each)||Pedro Valero-Lara|
|Experience of Julia Accelerator Interfaces in comparison to Fortran+MPI||Youngsung Kim|
|Python and HPC for Biosciences and Materials||Ada Sedova|
|Disadvantages of Julia||Gavin Wiggins|
|Comments about my experience with C/C++/OpenMP/MPI on HPC||Jean-Luc Fattebert|
|Interning with Julia||Elise Dettling|
|RIOPA.jl: a proxy app for reproducing I/O patterns||Philip Fackler|
|Continuous Integration with GitHub Actions and Julia||Alexia Arthur|
|pyMBIR: A Python-Based Tool for Model-Based Computed Tomography Reconstruction||Singanallur Venkatakrishnan|
|Tips for Using Julia on the Wombat Cluster||Ross Miller|
|The view of a newcomer to Julia||Christian Trefftz|
|Training Transformers at scale with Python||John Gounley|
|Performance in Julia (Matrix-Matrix Multiplication)||Pedro Valero-Lara|
|2:40pm-3:30pm||Birds-of-a-feather: Julia at ORNL||Pedro Valero-Lara|
|3:30pm-4:00pm||Closing remarks, adjourn||Pedro Valero-Lara, William Godoy|
- William F Godoy
- Pedro Valero-Lara
- Philip W Fackler
- Gregory R Watson
- Jeffrey S Vetter
- Donna Wilkerson
- Theresa Ahearn