Focus on:
All days
Jun 11, 2023
Jun 12, 2023
Jun 13, 2023
Jun 14, 2023
Jun 15, 2023
Jun 16, 2023
Jun 17, 2023
All sessions
Registration
Hide Contributions
Compact style
Indico style
Indico style - inline minutes
Indico style - numbered
Indico style - numbered + minutes
Indico Weeks View
Back to Conference View
Choose Timezone
Use the event/category timezone
Specify a timezone
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
Africa/Asmara
Africa/Bamako
Africa/Bangui
Africa/Banjul
Africa/Bissau
Africa/Blantyre
Africa/Brazzaville
Africa/Bujumbura
Africa/Cairo
Africa/Casablanca
Africa/Ceuta
Africa/Conakry
Africa/Dakar
Africa/Dar_es_Salaam
Africa/Djibouti
Africa/Douala
Africa/El_Aaiun
Africa/Freetown
Africa/Gaborone
Africa/Harare
Africa/Johannesburg
Africa/Juba
Africa/Kampala
Africa/Khartoum
Africa/Kigali
Africa/Kinshasa
Africa/Lagos
Africa/Libreville
Africa/Lome
Africa/Luanda
Africa/Lubumbashi
Africa/Lusaka
Africa/Malabo
Africa/Maputo
Africa/Maseru
Africa/Mbabane
Africa/Mogadishu
Africa/Monrovia
Africa/Nairobi
Africa/Ndjamena
Africa/Niamey
Africa/Nouakchott
Africa/Ouagadougou
Africa/Porto-Novo
Africa/Sao_Tome
Africa/Tripoli
Africa/Tunis
Africa/Windhoek
America/Adak
America/Anchorage
America/Anguilla
America/Antigua
America/Araguaina
America/Argentina/Buenos_Aires
America/Argentina/Catamarca
America/Argentina/Cordoba
America/Argentina/Jujuy
America/Argentina/La_Rioja
America/Argentina/Mendoza
America/Argentina/Rio_Gallegos
America/Argentina/Salta
America/Argentina/San_Juan
America/Argentina/San_Luis
America/Argentina/Tucuman
America/Argentina/Ushuaia
America/Aruba
America/Asuncion
America/Atikokan
America/Bahia
America/Bahia_Banderas
America/Barbados
America/Belem
America/Belize
America/Blanc-Sablon
America/Boa_Vista
America/Bogota
America/Boise
America/Cambridge_Bay
America/Campo_Grande
America/Cancun
America/Caracas
America/Cayenne
America/Cayman
America/Chicago
America/Chihuahua
America/Ciudad_Juarez
America/Costa_Rica
America/Creston
America/Cuiaba
America/Curacao
America/Danmarkshavn
America/Dawson
America/Dawson_Creek
America/Denver
America/Detroit
America/Dominica
America/Edmonton
America/Eirunepe
America/El_Salvador
America/Fort_Nelson
America/Fortaleza
America/Glace_Bay
America/Goose_Bay
America/Grand_Turk
America/Grenada
America/Guadeloupe
America/Guatemala
America/Guayaquil
America/Guyana
America/Halifax
America/Havana
America/Hermosillo
America/Indiana/Indianapolis
America/Indiana/Knox
America/Indiana/Marengo
America/Indiana/Petersburg
America/Indiana/Tell_City
America/Indiana/Vevay
America/Indiana/Vincennes
America/Indiana/Winamac
America/Inuvik
America/Iqaluit
America/Jamaica
America/Juneau
America/Kentucky/Louisville
America/Kentucky/Monticello
America/Kralendijk
America/La_Paz
America/Lima
America/Los_Angeles
America/Lower_Princes
America/Maceio
America/Managua
America/Manaus
America/Marigot
America/Martinique
America/Matamoros
America/Mazatlan
America/Menominee
America/Merida
America/Metlakatla
America/Mexico_City
America/Miquelon
America/Moncton
America/Monterrey
America/Montevideo
America/Montserrat
America/Nassau
America/New_York
America/Nome
America/Noronha
America/North_Dakota/Beulah
America/North_Dakota/Center
America/North_Dakota/New_Salem
America/Nuuk
America/Ojinaga
America/Panama
America/Paramaribo
America/Phoenix
America/Port-au-Prince
America/Port_of_Spain
America/Porto_Velho
America/Puerto_Rico
America/Punta_Arenas
America/Rankin_Inlet
America/Recife
America/Regina
America/Resolute
America/Rio_Branco
America/Santarem
America/Santiago
America/Santo_Domingo
America/Sao_Paulo
America/Scoresbysund
America/Sitka
America/St_Barthelemy
America/St_Johns
America/St_Kitts
America/St_Lucia
America/St_Thomas
America/St_Vincent
America/Swift_Current
America/Tegucigalpa
America/Thule
America/Tijuana
America/Toronto
America/Tortola
America/Vancouver
America/Whitehorse
America/Winnipeg
America/Yakutat
America/Yellowknife
Antarctica/Casey
Antarctica/Davis
Antarctica/DumontDUrville
Antarctica/Macquarie
Antarctica/Mawson
Antarctica/McMurdo
Antarctica/Palmer
Antarctica/Rothera
Antarctica/Syowa
Antarctica/Troll
Antarctica/Vostok
Arctic/Longyearbyen
Asia/Aden
Asia/Almaty
Asia/Amman
Asia/Anadyr
Asia/Aqtau
Asia/Aqtobe
Asia/Ashgabat
Asia/Atyrau
Asia/Baghdad
Asia/Bahrain
Asia/Baku
Asia/Bangkok
Asia/Barnaul
Asia/Beirut
Asia/Bishkek
Asia/Brunei
Asia/Chita
Asia/Choibalsan
Asia/Colombo
Asia/Damascus
Asia/Dhaka
Asia/Dili
Asia/Dubai
Asia/Dushanbe
Asia/Famagusta
Asia/Gaza
Asia/Hebron
Asia/Ho_Chi_Minh
Asia/Hong_Kong
Asia/Hovd
Asia/Irkutsk
Asia/Jakarta
Asia/Jayapura
Asia/Jerusalem
Asia/Kabul
Asia/Kamchatka
Asia/Karachi
Asia/Kathmandu
Asia/Khandyga
Asia/Kolkata
Asia/Krasnoyarsk
Asia/Kuala_Lumpur
Asia/Kuching
Asia/Kuwait
Asia/Macau
Asia/Magadan
Asia/Makassar
Asia/Manila
Asia/Muscat
Asia/Nicosia
Asia/Novokuznetsk
Asia/Novosibirsk
Asia/Omsk
Asia/Oral
Asia/Phnom_Penh
Asia/Pontianak
Asia/Pyongyang
Asia/Qatar
Asia/Qostanay
Asia/Qyzylorda
Asia/Riyadh
Asia/Sakhalin
Asia/Samarkand
Asia/Seoul
Asia/Shanghai
Asia/Singapore
Asia/Srednekolymsk
Asia/Taipei
Asia/Tashkent
Asia/Tbilisi
Asia/Tehran
Asia/Thimphu
Asia/Tokyo
Asia/Tomsk
Asia/Ulaanbaatar
Asia/Urumqi
Asia/Ust-Nera
Asia/Vientiane
Asia/Vladivostok
Asia/Yakutsk
Asia/Yangon
Asia/Yekaterinburg
Asia/Yerevan
Atlantic/Azores
Atlantic/Bermuda
Atlantic/Canary
Atlantic/Cape_Verde
Atlantic/Faroe
Atlantic/Madeira
Atlantic/Reykjavik
Atlantic/South_Georgia
Atlantic/St_Helena
Atlantic/Stanley
Australia/Adelaide
Australia/Brisbane
Australia/Broken_Hill
Australia/Darwin
Australia/Eucla
Australia/Hobart
Australia/Lindeman
Australia/Lord_Howe
Australia/Melbourne
Australia/Perth
Australia/Sydney
Canada/Atlantic
Canada/Central
Canada/Eastern
Canada/Mountain
Canada/Newfoundland
Canada/Pacific
Europe/Amsterdam
Europe/Andorra
Europe/Astrakhan
Europe/Athens
Europe/Belgrade
Europe/Berlin
Europe/Bratislava
Europe/Brussels
Europe/Bucharest
Europe/Budapest
Europe/Busingen
Europe/Chisinau
Europe/Copenhagen
Europe/Dublin
Europe/Gibraltar
Europe/Guernsey
Europe/Helsinki
Europe/Isle_of_Man
Europe/Istanbul
Europe/Jersey
Europe/Kaliningrad
Europe/Kirov
Europe/Kyiv
Europe/Lisbon
Europe/Ljubljana
Europe/London
Europe/Luxembourg
Europe/Madrid
Europe/Malta
Europe/Mariehamn
Europe/Minsk
Europe/Monaco
Europe/Moscow
Europe/Oslo
Europe/Paris
Europe/Podgorica
Europe/Prague
Europe/Riga
Europe/Rome
Europe/Samara
Europe/San_Marino
Europe/Sarajevo
Europe/Saratov
Europe/Simferopol
Europe/Skopje
Europe/Sofia
Europe/Stockholm
Europe/Tallinn
Europe/Tirane
Europe/Ulyanovsk
Europe/Vaduz
Europe/Vatican
Europe/Vienna
Europe/Vilnius
Europe/Volgograd
Europe/Warsaw
Europe/Zagreb
Europe/Zurich
GMT
Indian/Antananarivo
Indian/Chagos
Indian/Christmas
Indian/Cocos
Indian/Comoro
Indian/Kerguelen
Indian/Mahe
Indian/Maldives
Indian/Mauritius
Indian/Mayotte
Indian/Reunion
Pacific/Apia
Pacific/Auckland
Pacific/Bougainville
Pacific/Chatham
Pacific/Chuuk
Pacific/Easter
Pacific/Efate
Pacific/Fakaofo
Pacific/Fiji
Pacific/Funafuti
Pacific/Galapagos
Pacific/Gambier
Pacific/Guadalcanal
Pacific/Guam
Pacific/Honolulu
Pacific/Kanton
Pacific/Kiritimati
Pacific/Kosrae
Pacific/Kwajalein
Pacific/Majuro
Pacific/Marquesas
Pacific/Midway
Pacific/Nauru
Pacific/Niue
Pacific/Norfolk
Pacific/Noumea
Pacific/Pago_Pago
Pacific/Palau
Pacific/Pitcairn
Pacific/Pohnpei
Pacific/Port_Moresby
Pacific/Rarotonga
Pacific/Saipan
Pacific/Tahiti
Pacific/Tarawa
Pacific/Tongatapu
Pacific/Wake
Pacific/Wallis
US/Alaska
US/Arizona
US/Central
US/Eastern
US/Hawaii
US/Mountain
US/Pacific
UTC
Save
Europe/Zurich
English (United States)
Deutsch (Deutschland)
English (United Kingdom)
English (United States)
Español (España)
Français (France)
Polski (Polska)
Português (Brasil)
Türkçe (Türkiye)
Монгол (Монгол)
Українська (Україна)
中文 (中国)
Login
Thematic CERN School of Computing 2023
from
Sunday, June 11, 2023 (11:00 AM)
to
Saturday, June 17, 2023 (9:00 AM)
Sunday, June 11, 2023
11:00 AM
Registration
Registration
11:00 AM - 12:00 PM
12:20 PM
Lunch
Lunch
12:20 PM - 1:30 PM
1:30 PM
1:30 PM - 4:00 PM
4:00 PM
Welcome and introduction
Welcome and introduction
4:00 PM - 4:20 PM
4:20 PM
Self presentations
Self presentations
4:20 PM - 5:00 PM
One minute-one slide self presentations
5:15 PM
Visit of Split old town
Visit of Split old town
5:15 PM - 7:15 PM
7:30 PM
Outside Welcome Dinner
Outside Welcome Dinner
7:30 PM - 10:00 PM
Monday, June 12, 2023
8:00 AM
Breakfast
Breakfast
8:00 AM - 8:30 AM
8:45 AM
Opening Session
Opening Session
8:45 AM - 9:30 AM
9:30 AM
Self-presentation: 1 minute per person
Self-presentation: 1 minute per person
9:30 AM - 10:00 AM
10:00 AM
Coffee break
Coffee break
10:00 AM - 10:15 AM
10:15 AM
Preparing for the HL-LHC computational challenge
-
Danilo Piparo
(
CERN
)
Preparing for the HL-LHC computational challenge
Danilo Piparo
(
CERN
)
10:15 AM - 11:15 AM
In this talk we will introduce some basic concepts related to HEP data processing and analysis workflows, seeing them in action in the context of LHC experiments. We’ll also talk about the evolution of the LHC accelerator and experiments. We’ll characterise at a high level what are the consequences of those upgrades for the HEP data processing software, in particular in the context of an evolving hardware and computing infrastructure.
11:15 AM
Introduction to efficient computing
-
Andrzej Nowak
Introduction to efficient computing
Andrzej Nowak
11:15 AM - 12:15 PM
Technologies and Platforms - lecture 1 - The evolution of computing hardware and what it means in practice - The seven dimensions of performance - Controlling and benchmarking your computer and software - Software that scales with the hardware - Advanced performance tuning in hardware
12:20 PM
Lunch
Lunch
12:20 PM - 1:00 PM
1:00 PM
Study time and/or daily sports
Study time and/or daily sports
1:00 PM - 2:00 PM
2:00 PM
Self-presentation: 1 minute per person
Self-presentation: 1 minute per person
2:00 PM - 2:20 PM
2:20 PM
Hardware evolution and heterogeneity
-
Andrzej Nowak
Hardware evolution and heterogeneity
Andrzej Nowak
2:20 PM - 3:20 PM
Technologies and Platforms - lecture 2 - Accelerators, co-processors, heterogeneity - Memory architectures, hardware caching and NUMA - Compute devices: CPU, GPU, FPGA, ASIC etc. - The role of compilers
3:20 PM
Coffee break
Coffee break
3:20 PM - 3:45 PM
3:45 PM
Technologies and Platforms - exercise
-
Andrzej Nowak
Technologies and Platforms - exercise
Andrzej Nowak
3:45 PM - 5:45 PM
5:45 PM
Data-oriented design
-
Andrzej Nowak
Data-oriented design
Andrzej Nowak
5:45 PM - 6:45 PM
Technologies and Platforms - lecture 3 - Hardware vectorization in detail – theory vs. practice - Software design for vectorization and smooth data flow - How can compilers and other tools help?
7:15 PM
Dinner at MEDILS
Dinner at MEDILS
7:15 PM - 8:15 PM
Tuesday, June 13, 2023
8:00 AM
Breakfast
Breakfast
8:00 AM - 8:30 AM
8:45 AM
Writing parallel software
-
Sebastien Ponce
(
CERN
)
Writing parallel software
Sebastien Ponce
(
CERN
)
8:45 AM - 9:45 AM
Parallel and Optimised Scientific Software - lecture 1 - Amdahl's and Gustafson's laws - Asynchronous execution - Finding concurrency, task vs. data parallelism - Using threading in C++ and Python, comparison with multi-process - Resource protection and thread safety - Locks, thread local storage, atomic operations
9:45 AM
Announcements
Announcements
9:45 AM - 10:00 AM
10:00 AM
Coffee break
Coffee break
10:00 AM - 10:15 AM
10:15 AM
Modern programming languages for HEP
-
Sebastien Ponce
(
CERN
)
Modern programming languages for HEP
Sebastien Ponce
(
CERN
)
10:15 AM - 11:15 AM
Parallel and Optimised Scientific Software - lecture 2 - Why Python and C++ ? - Recent evolutions: C++ 11/14/17 - Modern features of C++ related to performance - Templating versus inheritance, pros and cons of virtual inheritance - Python 3, and switching from Python 2
11:15 AM
Technologies and Platforms - exercise
-
Andrzej Nowak
Technologies and Platforms - exercise
Andrzej Nowak
11:15 AM - 12:15 PM
12:20 PM
Lunch
Lunch
12:20 PM - 1:00 PM
1:00 PM
Study time and/or daily sports
Study time and/or daily sports
1:00 PM - 2:00 PM
2:00 PM
Technologies and Platforms - exercise debriefing
-
Andrzej Nowak
Technologies and Platforms - exercise debriefing
Andrzej Nowak
2:00 PM - 2:20 PM
2:20 PM
Optimizing existing large codebase
-
Sebastien Ponce
(
CERN
)
Optimizing existing large codebase
Sebastien Ponce
(
CERN
)
2:20 PM - 3:20 PM
Parallel and Optimised Scientific Software - lecture 3 - Measuring performance, tools and key indicators - Improving memory handling - The nightmare of thread safety - Code modernization and low level optimizations - Data structures for efficient computation in modern C++
3:20 PM
Coffee break
Coffee break
3:20 PM - 3:45 PM
3:45 PM
Optimizing existing large codebase - exercise
-
Sebastien Ponce
(
CERN
)
Optimizing existing large codebase - exercise
Sebastien Ponce
(
CERN
)
3:45 PM - 6:45 PM
Optimisation of an existing, production grade large codebase
7:15 PM
Dinner at MEDILS
Dinner at MEDILS
7:15 PM - 8:15 PM
Wednesday, June 14, 2023
8:00 AM
Breakfast
Breakfast
8:00 AM - 8:30 AM
8:45 AM
Scientific computing on heterogeneous architectures
-
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Scientific computing on heterogeneous architectures
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
8:45 AM - 9:45 AM
Programming for Heterogeneous Architectures - lecture 1 - Introduction to heterogeneous architectures and the performance challenge - From general to specialized: Hardware accelerators and applications - Type of workloads ideal for different accelerators - Trade-offs between multi-core and many-core architectures - Implications of heterogeneous hardware on the design and architecture of scientific software - Embarrassingly parallel scientific applications in HPC and CERN
9:45 AM
Announcements
Announcements
9:45 AM - 10:00 AM
10:00 AM
Coffee break
Coffee break
10:00 AM - 10:15 AM
10:15 AM
Student lightning talks
Student lightning talks
10:15 AM - 11:15 AM
11:15 AM
Practical vectorization
-
Sebastien Ponce
(
CERN
)
Practical vectorization
Sebastien Ponce
(
CERN
)
11:15 AM - 12:15 PM
Parallel and Optimised Scientific Software - lecture 4 - Measuring vectorization level - What to expect from vectorization - Preparing code for vectorization - Vectorizing techniques in C++: intrinsics, libraries, autovectorization
12:20 PM
Lunch
Lunch
12:20 PM - 1:00 PM
1:00 PM
School photo
School photo
1:00 PM - 1:05 PM
1:30 PM
Outdoor excursion
Outdoor excursion
1:30 PM - 6:15 PM
7:00 PM
Excursion dinner
Excursion dinner
7:00 PM - 8:30 PM
Thursday, June 15, 2023
8:00 AM
Breakfast
Breakfast
8:00 AM - 8:30 AM
8:45 AM
Programming for GPUs
-
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Programming for GPUs
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
8:45 AM - 9:45 AM
Programming for Heterogeneous Architectures - lecture 2 - From SIMD to SPMD, a programming model transition - Thread and memory organization - Basic building blocks of a GPU program - Control flow, synchronization, atomics
9:45 AM
Announcements
Announcements
9:45 AM - 10:00 AM
10:00 AM
Coffee break
Coffee break
10:00 AM - 10:15 AM
10:15 AM
Performant programming for GPUs
-
Daniel Campora
(
University of Maastricht
)
Performant programming for GPUs
Daniel Campora
(
University of Maastricht
)
10:15 AM - 11:15 AM
Programming for Heterogeneous Architectures - lecture 3 - Data locality, coalesced memory accesses, tiled data processing - GPU streams, pipelined memory transfers - Under the hood: branchless, warps, masked execution - Debugging and profiling a GPU application
11:15 AM
Practical vectorization - exercise
-
Sebastien Ponce
(
CERN
)
Practical vectorization - exercise
Sebastien Ponce
(
CERN
)
11:15 AM - 12:15 PM
12:20 PM
Lunch
Lunch
12:20 PM - 1:00 PM
1:00 PM
Study time and/or daily sports
Study time and/or daily sports
1:00 PM - 2:00 PM
2:00 PM
Optimisation + vectorization - exercise debriefing
-
Sebastien Ponce
(
CERN
)
Optimisation + vectorization - exercise debriefing
Sebastien Ponce
(
CERN
)
2:00 PM - 2:40 PM
2:40 PM
Design patterns and best practices
-
Daniel Campora
(
University of Maastricht
)
Design patterns and best practices
Daniel Campora
(
University of Maastricht
)
2:40 PM - 3:40 PM
Programming for Heterogeneous Architectures - lecture 4 - Good practices: single precision, floating point rounding, avoid register spilling, prefer single source - Other standards: SYCL, HIP, OpenCL - Middleware libraries and cross-architecture compatibility - Reusable parallel design patterns with real-life applications
3:40 PM
Coffee break
Coffee break
3:40 PM - 4:10 PM
4:10 PM
Programming for heterogeneous architectures - exercise
-
Daniel Campora
(
Nikhef National institute for subatomic physics (NL)
)
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Programming for heterogeneous architectures - exercise
Daniel Campora
(
Nikhef National institute for subatomic physics (NL)
)
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
4:10 PM - 6:45 PM
7:15 PM
Dinner at MEDILS
Dinner at MEDILS
7:15 PM - 8:15 PM
Friday, June 16, 2023
8:00 AM
Breakfast
Breakfast
8:00 AM - 8:30 AM
8:45 AM
Programming for heterogeneous architectures - exercise
-
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Daniel Campora
(
University of Maastricht
)
Programming for heterogeneous architectures - exercise
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Daniel Campora
(
University of Maastricht
)
8:45 AM - 10:00 AM
10:00 AM
Coffee break
Coffee break
10:00 AM - 10:15 AM
10:15 AM
Programming for heterogeneous architectures - exercise
-
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Daniel Campora
(
University of Maastricht
)
Programming for heterogeneous architectures - exercise
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Daniel Campora
(
University of Maastricht
)
10:15 AM - 11:30 AM
11:30 AM
Announcements
Announcements
11:30 AM - 11:45 AM
11:45 AM
Programming for heterogeneous architectures - exercise debriefing
-
Daniel Hugo Campora Perez
(
Nikhef National institute for subatomic physics (NL)
)
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
Programming for heterogeneous architectures - exercise debriefing
Daniel Hugo Campora Perez
(
Nikhef National institute for subatomic physics (NL)
)
Dorothea Vom Bruch
(
Aix Marseille Univ, CNRS/IN2P3, CPPM, Marseille, France
)
11:45 AM - 12:15 PM
12:20 PM
Lunch
Lunch
12:20 PM - 1:00 PM
1:00 PM
Study time and/or daily sports
Study time and/or daily sports
1:00 PM - 2:20 PM
2:20 PM
Summary and future technologies overview
-
Andrzej Nowak
Summary and future technologies overview
Andrzej Nowak
2:20 PM - 3:20 PM
Technologies and Platforms - lecture 4 - Teaching program summary and wrap-up - Next-generation memory technologies and interconnect - Future computing evolution
3:20 PM
Coffee break
Coffee break
3:20 PM - 3:45 PM
3:45 PM
Exam
Exam
3:45 PM - 4:30 PM
4:30 PM
Free time
Free time
4:30 PM - 6:00 PM
6:00 PM
Closing Session
Closing Session
6:00 PM - 7:15 PM
7:30 PM
Closing dinner
Closing dinner
7:30 PM - 9:30 PM
Saturday, June 17, 2023
8:00 AM
Breakfast
Breakfast
8:00 AM - 8:30 AM
8:30 AM
Departure - bus leaves at 8:30
Departure - bus leaves at 8:30
8:30 AM - 9:00 AM