{"id":2638,"date":"2024-09-02T07:17:53","date_gmt":"2024-09-02T11:17:53","guid":{"rendered":"https:\/\/blogs.mathworks.com\/matlab\/?p=2638"},"modified":"2024-09-02T07:17:53","modified_gmt":"2024-09-02T11:17:53","slug":"teaching-matlab-at-the-2024-eumaster4hpc-high-performance-computing-summer-school","status":"publish","type":"post","link":"https:\/\/blogs.mathworks.com\/matlab\/2024\/09\/02\/teaching-matlab-at-the-2024-eumaster4hpc-high-performance-computing-summer-school\/","title":{"rendered":"Teaching MATLAB at the 2024 EUMaster4HPC High Performance Computing Summer School"},"content":{"rendered":"<div class = rtcContent><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>I think that MATLAB is a great platform on which to do High Performance Computing (HPC) and take any opportunity I can to teach or demonstrate this. Such an opportunity came up recently when I was invited to teach part of the MATLAB day for the <\/span><a href = \"https:\/\/eumaster4hpc.uni.lu\/news\/summer-school-2024-18-24-august-2024-save-the-date\/\" target=\"_blank\"><span>EUMaster4HPC Summer School<\/span><\/a><span> in Ostrava, Czech Republic<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>European Master For High Performance Computing<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>HPC can be life changing for a researcher. The first time you step away from the constraints of your laptop or, if you are lucky, a highly specified desktop workstation and make use of truly large-scale resources is a liberating experience. Without even realizing it, we often limit ourselves to thinking about problems that fit onto a laptop. We are limited by memory, compute resource and disk space which leads to limitations on the size of problems we can solve in a reasonable time or even at all. High performance computing systems can make these limitations go away, if you know how to use them.<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>This is where the <\/span><a href = \"https:\/\/eumaster4hpc.uni.lu\/\" target=\"_blank\"><span style=' font-weight: bold;'>European Master For High Performance Computing<\/span><\/a><span style=' font-weight: bold;'> (<\/span><span>EUMaster4HPC) comes in. As its website will tell you, it is the first pan-European High Performance Computing Master program and is a collaboration between several European universities, supercomputing centres and industrial partners. The consortium has over 60 partners who work together to define a body of knowledge in HPC and a sustainable pathway for the program.<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>In short, the EUMaster4HPC is training the next generation of HPC users and providers. It's exactly the sort of program I wished I could have done earlier in my career. <\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><img class = \"imageNode\" src = \"http:\/\/blogs.mathworks.com\/matlab\/files\/2024\/09\/EUMaster4HPC_2024_1.png\" width = \"646\" height = \"464\" alt = \"\" style = \"vertical-align: baseline; width: 646px; height: 464px;\"><\/img><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>Course structure for the European Master For High Performance Computing. Source: <\/span><a href = \"https:\/\/eumaster4hpc.uni.lu\/\" target=\"_blank\"><span>https:\/\/eumaster4hpc.uni.lu\/<\/span><\/a><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>The 2024 EUMaster4HPC Summer School<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>The two year Masters program is bridged by a one week summer school and this year's focus was <\/span><a href = \"https:\/\/eumaster4hpc.uni.lu\/summer-school-2024\/\" target=\"_blank\"><span>HPC in Data Science<\/span><\/a><span>. The event was organized by <\/span><a href = \"https:\/\/www.it4i.cz\/en\" target=\"_blank\"><span style=' font-weight: bold;'>IT4Innovations National Supercomputing Center<\/span><\/a><span style=' font-weight: bold;'> <\/span><span>amd<\/span><span style=' font-weight: bold;'> <\/span><a href = \"https:\/\/eur01.safelinks.protection.outlook.com\/?url=https%3A%2F%2Fvsc.ac.at%2F&amp;data=05%7C02%7Cregis.beck%40uni.lu%7C86c2ed6d9da04b1a258808dc6f8e0856%7C445a9c950f9d49539db1bc4a45dd1220%7C0%7C0%7C638507903380092099%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&amp;sdata=Fzpxtf9tfPidNUL4cA7l%2BXuVqXIpvqOL2Vw8IRi47ZM%3D&amp;reserved=0\" target=\"_blank\"><span style=' font-weight: bold; text-decoration: underline;'>Vienna Scientific Cluster (VSC<\/span><span style=' text-decoration: underline;'>)<\/span><\/a><span>  with sponsorship from MathWorks. 46 students were taught a range of topics including parallel computing and large-scale data analysis in R, Python and MATLAB, all backed by two of the largest supercomputers in Europe based in Austria and the Czech Republic. <\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>The MATLAB sessions were delivered on Karolina, a petascale system owned by the <\/span><a href = \"https:\/\/eurohpc-ju.europa.eu\/supercomputers\/our-supercomputers_en\" target=\"_blank\"><span>EuroHPC Joint Undertaking<\/span><\/a><span> and <\/span><a href = \"https:\/\/www.it4i.cz\/en\" target=\"_blank\"><span>IT4Innovations<\/span><\/a><span>, that serves as a Czech national HPC resource. It was ranked 69th in the worldwide TOP500 supercomputers when it was installed in 2021. In other words, it's one of the fastest computers in the world!   <\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><img class = \"imageNode\" src = \"http:\/\/blogs.mathworks.com\/matlab\/files\/2024\/09\/EUMaster4HPC_2024_2.png\" width = \"430\" height = \"286\" alt = \"\" style = \"vertical-align: baseline; width: 430px; height: 286px;\"><\/img><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>The primary way we accessed MATLAB on this machine was via the <\/span><a href = \"https:\/\/openondemand.org\/\" target=\"_blank\"><span>Open OnDemand<\/span><\/a><span> setup that had been configured by the IT4Innovations team in collaboration with MathWorks specialist HPC installation team. The result works in the web browser and looks just like <\/span><a href = \"https:\/\/uk.mathworks.com\/products\/matlab-online.html\"><span>MATLAB Online<\/span><\/a><span> but with a 100,000+ core supercomputer behind it! If you have never used MATLAB on a HPC cluster this way before, I can highly recommend it. <\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>Developing new MATLAB material for HPC<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>Along with my colleage, <\/span><a href = \"https:\/\/www.linkedin.com\/in\/franziska-albers-405070102\/?locale=en_US\" target=\"_blank\"><span>Franziska Albers<\/span><\/a><span>, we developed totally new material for this event. My seminar was based around a 'code-kata' idea where I demonstrated how to program the same algorithm in many different ways, exploring various aspects of performance programming in MATLAB as I went, culminating in a demonstration where I ran the algorithm on all 8 NVIDIA A100 GPUs of one of Karolina's GPU nodes simultaneously. <\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>Franziska, on the other hand, focused on large scale data engineering problems using the <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/parquet-files.html\"><span>Parquet file format<\/span><\/a><span> and <\/span><a href = \"https:\/\/uk.mathworks.com\/help\/matlab\/tall-arrays.html\"><span>Tall Arrays<\/span><\/a><span>. In the afternoon, the students could choose from a set of projects we created ranging from Deep Learning hyper-parameter optimisation through to code optimisation, image processing and cluster benchmarking. We had additional support from the guys at <\/span><a href = \"https:\/\/www.humusoft.cz\/en\/\" target=\"_blank\"><span>Humusoft<\/span><\/a><span>, the exclusive MATLAB distributor in the Czech Republic and Slovakia. <\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>Honestly, the session was exhausting in the best possible way! All of the students were highly engaged, frequently stopping us to ask insightful questions that clearly demonstrated that they had had some superb HPC education in their first year. <\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><img class = \"imageNode\" src = \"http:\/\/blogs.mathworks.com\/matlab\/files\/2024\/09\/EUMaster4HPC_2024_3.png\" width = \"687\" height = \"515\" alt = \"\" style = \"vertical-align: baseline; width: 687px; height: 515px;\"><\/img><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span style=' font-weight: bold;'>The beginning of a new friendship in HPC<\/span><\/div><div  style = 'margin: 2px 10px 9px 4px; padding: 0px; line-height: 21px; min-height: 0px; white-space: pre-wrap; color: rgb(33, 33, 33); font-family: Helvetica, Arial, sans-serif; font-style: normal; font-size: 14px; font-weight: 400; text-align: left; '><span>This event was the professional highlight of the summer for me and we are already discussing plans for meeting up in <\/span><a href = \"https:\/\/sc24.supercomputing.org\/\" target=\"_blank\"><span>Atlanta for SC24<\/span><\/a><span> and how we might continue collaborating in future years. For now, I suggest keeping an eye on the ladies and gentlemen in the picture above because they'll be the future of High Performance Computing once they graduate. <\/span><\/div>\n<\/div><script type=\"text\/javascript\">var css = ''; var head = document.head || document.getElementsByTagName('head')[0], style = document.createElement('style'); head.appendChild(style); style.type = 'text\/css'; if (style.styleSheet){ style.styleSheet.cssText = css; } else { style.appendChild(document.createTextNode(css)); }<\/script>","protected":false},"excerpt":{"rendered":"<div class=\"overview-image\"><img src=\"https:\/\/blogs.mathworks.com\/matlab\/files\/2024\/09\/EUMaster4HPC_2024_3.png\" class=\"img-responsive attachment-post-thumbnail size-post-thumbnail wp-post-image\" alt=\"\" decoding=\"async\" loading=\"lazy\" \/><\/div><p>I think that MATLAB is a great platform on which to do High Performance Computing (HPC) and take any opportunity I can to teach or demonstrate this. Such an opportunity came up recently when I was... <a class=\"read-more\" href=\"https:\/\/blogs.mathworks.com\/matlab\/2024\/09\/02\/teaching-matlab-at-the-2024-eumaster4hpc-high-performance-computing-summer-school\/\">read more >><\/a><\/p>","protected":false},"author":176,"featured_media":2632,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[42,17,14],"tags":[],"_links":{"self":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts\/2638"}],"collection":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/users\/176"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/comments?post=2638"}],"version-history":[{"count":1,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts\/2638\/revisions"}],"predecessor-version":[{"id":2641,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/posts\/2638\/revisions\/2641"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/media\/2632"}],"wp:attachment":[{"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/media?parent=2638"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/categories?post=2638"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.mathworks.com\/matlab\/wp-json\/wp\/v2\/tags?post=2638"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}