Hello and practicalities

Practicalities

  • Format: I will present and do live-coding walkthroughs. There will be no hands-on exercises or working breakout rooms. Feel free to follow along on your own computer

  • Feel free to interrupt for questions at any time, especially so clarification questions. Think of it as a classroom tutorial! (not as an online presentation with questions only at the end)

  • Feel free to use the Q&A in the conference system to ask questions (https://www.accelevents.com/e/user2022/portal/workshops/260741). I’ll try to address them orally. Of course, if someone likes to answer a question in the Q&A, please feel free to do so

  • Rule #1: There are no stupid questions. Period. True!
    (In contrast, not asking about things you wonder about, is a bit silly)

  • Help needed during our live session: Please make me aware of new questions in the Q&A chat, if I miss them (I can only multitask so much)

  • This tutorial is available on https://github.com/HenrikBengtsson/future-tutorial-user2022/

  • After the session, feel free to ask more questions on https://github.com/HenrikBengtsson/future-tutorial-user2022/discussions/. I’ll try my best to help you out there

Agenda

  • (10 min): Hello and practicalities
  • (20 min): Part 1: An Overview of The Futureverse
  • (25 min): Part 2: The core future framework, e.g. future() and value()
  • (10 min): break
  • (30 min): Part 3: Map-reduce APIs, e.g. future.apply, furrr, and foreach
  • (10 min): break
  • (35 min): Part 4: What makes futures so easy to use? (“Business as usual”)
  • (10 min): break
  • (20 min): Part 5: Reporting on progress updates
  • (10 min): Part 6: Quick summary and comparison to other parallel frameworks
  • (20 min): Part 7: Random numbers and reproducibility
  • (20 min): Open discussion

Total time: 3.5 hours (including breaks)

Polls

Under ‘Polls’ in Accelevents (https://www.accelevents.com/e/user2022/portal/workshops/260741), please answer the following questions.

Poll #1: How much do you know about parallelization in R?

  1. I’m new to parallelization in R

  2. I’ve tried the basics (e.g. parallel or foreach), but that’s it

  3. I’ve already used the future framework and want to learn more

  4. I have a good understand about the different parallelization solutions in R

Poll #2: What is your main operating system when using R?

  1. Linux
  2. macOS
  3. MS Windows
  4. Web based, e.g. RStudio Cloud
  5. Other

Poll #3: How do you run R?

  1. Terminal, e.g. R
  2. RStudio
  3. Rgui (MS Windows)
  4. R.app (macOS)
  5. VSCode (e.g. vscode-R)
  6. Emacs (e.g. Emacs Speaks Statistics)
  7. Other

Poll #4: Do you have access to a cluster?

  1. Yes, ad-hoc cluster of local machines
  2. Yes, ad-hoc cluster in the cloud
  3. Yes, a high-performance compute (HPC) cluster with a job scheduler
  4. Yes, something else
  5. No
  6. What does this even mean?