Our Training Catalogue
Below is the list of standard workshops and seminars that our team regularly delivers, ranging from introductory sessions to advanced topics. Click here to view the ACENET Training Catalogue as a PDF.
Courses are scheduled at various times of the year and at various institutions, based on demand. The ACENET Basics Series, as well as many of the ACENET Focus Seminars, are offered, at minimum, every spring during May-June. Participants have the option of attending in person at either Dalhousie University, St. FX University, University of New Brunswick, or Memorial University. Should these locations not be convenient, most topics are also offered via video-conference through any of the Collaboration Rooms at our partner institutions.
Our workshops and seminars can also be arranged at other times of year and locations. If you would like to see a particular workshop delivered, and it is not amongst our upcoming training, or if you’re looking for customized training or training that doesn’t appear in our catalogue, please complete the Training Request below.
There are also a few video tutorials available.
ACENET Basics Series
These hour-long lectures introduce the essentials of advanced computing at ACENET. This series is strongly recommended for all new ACENET users.
|Introduction to Using New National Systems||This is an introductory session to using the new national systems, Graham and Cedar. Participants will learn about their capabilities, file systems, available software, the Slurm scheduler, and how to get up and running with them. This session provides an overview and quick-start guidance. (1 hour) (Slides) (Video)|
|Introduction to HPC With ACENET & Compute Canada||What is ACENET and what can it do for me? What hardware and software is available? How do I get an account? Once I’ve got an account, how do I get connected and start doing things? For new users. (1 hour) (Slides) (Video)|
|Introduction to Linux Command Line||Learn the basic concepts and commands needed to work with the Unix/Linux command line interface. For new users. (1 hour) (Slides) (Video)|
|Introduction to Shell Scripting||Exercise the power of the command line with shell scripting. For those familiar with working in a Unix/Linux environment but have had no experience with shell scripting. For new users. (1 hour) (Slides) (Video)|
|Job Scheduling with Slurm||Introduction to the Slurm job management software used on the new Compute Canada systems Graham and Cedar. Learn how the job scheduler works, and how to make it efficiently manage and troubleshoot jobs on these clusters. For new users of the Compute Canada national systems. (1 hour) (Slides) (Video)|
|Job Scheduling with Grid Engine||Introduction to N1GE production job management software (Grid Engine). Learn how the job scheduler works, and how to make it efficiently manage and troubleshoot jobs on ACENET clusters. For new users of ACENET systems. (1 hour) (Slides) (Video)|
|Introduction to Cloud Computing||This session provides an introduction to the Compute Canada cloud which is used to create and manage virtual machines. Virtual machines allow great flexibility but require knowledge and effort to configure them for your specific needs. Virtual machines can be used for diverse work flows, from processing particle physics data to running humanities and social sciences websites. Learn how to create a virtual machine and how to start using it. (1 hour) (Slides) (Video)|
Software & Data Carpentry
|Software Carpentry||Software Carpentry teaches basic computational research skills. Sessions include program design, version control, data management and task automation. This is a hands-on workshop, where collaboration is encouraged and participants are asked to apply their learning to individual research problems. This workshop is of interest to: current computational researchers and their teams; anyone considering a research project that requires computational research; or students who want to gain these skills to enhance their career choices. A laptop is required. (2 days)|
|Data Carpentry||Data Carpentry trains researchers in the core data skills for efficient, shareable, and reproducible research practices covering the full lifecycle of data-driven research. Through a two-day hands-on approach, the focus is on the introductory computational skills needed for data management and analysis. The workshops are domain-specific, and include life and physical sciences, and humanities and social sciences. Sessions build on the existing knowledge of participants to enable them to quickly apply the skills learned to their own research. This workshop is of interest to: current researchers and their teams using large data sets; anyone considering a research project that involves large data sets; or students who want to gain these skills to enhance their career choices. A laptop is required. (2 days)|
|Data Management Planning||This workshop will provide a brief overview of Research Data Management, with a focus on the development of Data Management Plans (DMPs). DMPs are a key component of the data management process that touch on all aspects of RDM, describing how data are collected, formatted, preserved, and shared. Importantly, they also promote the consideration of the costs and challenges associated with managing research data. Participants will learn about RDM in the context of the research data lifecycle, gain an understanding of the basic components of a DMP, create a DMP for their research project using the Portage Network’s DMP Assistant tool, and think critically about data management challenges and how to evaluate DMPs. No software or prior data management training required. Before the workshop, participants should create an account on the Portage Network DMP Assistant tool and come prepared with information about a specific project for which the DMP can be written (e.g., a project workplan or research abstract). Participants must also bring their own laptop. (1.5 hours)|
ACENET Focus Seminars
Focus Seminars dive more deeply into topics that may be more advanced, or of more specialized interest than the Basics Series.
|Grid Engine: Managing Many Jobs (2 hours)||How to handle dozens or hundreds of jobs without typing “qsub” every time, using templates, loops, and task arrays. This workshop is most useful for those who already have an ACENET account. Bring a laptop to participate in the exercises. (2 hours)|
|Introduction to Parallel Programming||This workshop introduces the terminology and concepts of parallel programming. This includes types of parallel programs, design methodologies, and performance measures. Appropriate for those with programming experience and who have taken the ACENET Basics Seminars. (1 hour) (Slides)|
|Lightning Introduction to MPI Programming||A one-hour crash course in the primary tool for writing message-passing parallel programs. It will cover the basic concepts of MPI, including sending and receiving messages, coordination, and data synchronization. This workshop assumes that you have some programming experience with one or more languages and have take the ACENET Basics seminars. (1 hour) (Slides)|
|Introduction to Shared Memory (OpenMP) Programming||A course in the primary tool for writing shared-memory parallel programs. It will cover OpenMP, and a short introduction to POSIX threads. You will learn about the most common techniques, such as parallel for loops, barriers and critical sections. This workshop assumes that you have programming experience with one or more languages and have taken the ACENET Basics Seminars. (1 hour) (Slides)|
|Advanced OpenMP Programming||This workshop assumes that you have some experience with OpenMP or some other shared-memory programming paradigm. This workshop will cover more advanced topics like controlling work distributions, creating and using task pools and several other areas. (2 hours)|
Tools & Techniques
|Make and Makefiles||Many programs come as source code and a mysterious Makefile, with instructions like “make all; make install”. Here’s how it works, what can go wrong, how to fix it, and maybe even how to write your own. Must have some programming experience and have taken the ACENET Basics Seminars. (1 hour) (Slides)|
|Code Optimization – Tips & Tricks||This workshop assumes that you have some experience with one or more programming languages. It will cover some basic optimization techniques that are general in nature, as well as several tips for specific languages. (1 hour)|
|Troubleshooting Session||For those with some experience using the ACENET systems, this session is an informal opportunity to address individual difficulties, areas of concern, or questions. (1 hour)|
|Molecular Dynamics Workshop||This workshop introduces researchers to the theory, key ideas, and techniques of Molecular Dynamics. Practical application targeted at biosimulations is introduced using the GROMACS package. (full day)|
|Handling Big Data on the Cloud||This workshop introduces researchers to using the Compute Canada cloud to handle projects involving big data.(2 hours) (Slides)|
|Introduction to Coding Using C++||Designed for those who have no experience in coding, want to understand the general principles of coding and have taken the ACENET Basics Seminars. (1 hour)|
|Introduction to C++||This is a more in-depth hands-on coding workshop for those who are interested in coding in C++. Designed for 8-10 participants who have ACENET accounts. Must have some rudimentary programming experience and have taken the ACENET Introduction to coding and the ACENET Basics Seminars. Workshop format is 2×45-minute lectures, 2×30-minute breaks, and 2×45-minute student programming sessions. (4 hours)|
|Introduction to C||This workshop will cover an introduction to the C programming language, including syntax, variables and data structures. While not necessary, some experience with programming concepts would be helpful. By the end of the workshop, you should be able to read C programs and be able to write and compile simple ones of your own. (1 hour)|
|Further Topics in C||This workshop assumes that you already know the basics of the C programming language. We will move on to deeper topics like memory management, pointer arithmetic and file I/O. (1 hour)|
|Introduction to Fortran 77/90||This is a hands-on coding workshop for those who are interested in coding in Fortran 77/90. Designed for 8-10 participants who have ACENET accounts. Must have some rudimentary programming experience and have taken the ACENET introduction to coding and the ACENET Basics Seminars. Workshop format is 2×45-minute lectures, 2×30-minute breaks, and 2×45-minute student programming sessions. (4 hours)|
|Introduction to Python||This workshop will cover an introduction to the Python programming language, including syntax, variables and data structures. While not necessary, some experience with programming concepts would be helpful. By the end of the workshop, you should be able to read Python programs and be able to write simple ones of your own. (2 hours) (Slides)|
|Scientific Python||This workshop assumes that you have some experience with the Python programming language. It will cover several packages, including numpy and scipy, that are useful in doing scientific computations. Several different examples will be discussed, including solving PDEs, solving systems of equations, and even doing symbolic computations. (2 hours) (Slides)|
|Python – Profiling & Optimizing Code||This workshop assumes that you have some previous Python experience. You will learn many of the tools available to profile your code and find the trouble spots. Once located, the second half of the workshop presents a series of tips and tricks that may be able to help you speed up the execution of your program. (1.5 hours) (Slides)|
|Python Imaging||This workshop assumes that you have some experience with the Python language. It will cover the external packages that are useful in doing image processing. This includes techniques that may be helpful in biomedical imaging, space based earth imaging, or anything else image related. (1 hour)|
|Introduction to R||This workshop will cover the basics of R, how to do basic statistics and plotting. It will cover how to install and use extra packages, but not how to write your own. By the end of the workshop, you will be able to do basic statistical analysis, and know how to access the tools to do more advanced analysis. (2 hours)|
|R – Hands On||This workshop provides a hands-on session where attendees are taken through several tasks in order to become familiar with how R works. (2 hours)|
|R – Big Data & Parallel Programming||This workshop assumes that you have some experience with R. It will cover some of the packages that can help when dealing with very large data sets. It will also cover some of the packages and techniques that are useful when trying to do parallel programming in R, including issues in trying to do parallel work on Windows machines. (2 hours)|
|R – Programming & Building Modules||This workshop assumes that you have some experience with R. It will cover using R as a full programming language, allowing you to write your own code. It will also cover the basics of creating your own packages for when you are ready to share your code with other users. (2 hours)|