<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.scinet.utoronto.ca/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Willis2</id>
	<title>SciNet Users Documentation - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.scinet.utoronto.ca/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Willis2"/>
	<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php/Special:Contributions/Willis2"/>
	<updated>2026-04-30T02:38:01Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.35.12</generator>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7679</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7679"/>
		<updated>2026-04-29T22:29:56Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Partial3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Down3 | OnDemand|https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Down | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Down | HPSS|HPSS}}&lt;br /&gt;
|{{Partial | Balam|Balam}}&lt;br /&gt;
|{{Partial | S4H | S4H}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Down | Teach|Teach}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Wed Apr 29, 2026, 5:25 pm:''' For security reasons, login access to all systems has been disabled, as have OnDemand Apps.  Compute jobs are still allowed to run.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Apr 23, 2026, 10:00 am:''' The Trillium file system has issues and may be slow on certain nodes. We are still investigating.&lt;br /&gt;
&lt;br /&gt;
'''Tue Apr 14, 2026, 10:30 am:''' The Trillium globus endpoint is working again.&lt;br /&gt;
&lt;br /&gt;
'''Sat Apr 11, 2026, 10:00 pm:''' The Trillium globus endpoint is not operational (it times out). We are investigating.&lt;br /&gt;
&lt;br /&gt;
'''Thu Apr 09, 2026, 10:30 am:''' tri-dm4.scinet.utoronto.ca and robot4.scinet.utoronto.ca are in maintenance. Use 1,2, or 3 instead.&lt;br /&gt;
&lt;br /&gt;
'''Wed Apr 08, 2026, 6:30 pm:''' Software from the CVMFS 'restricted' area is back.&lt;br /&gt;
&lt;br /&gt;
'''Wed Apr 08, 2026, 1:40 pm:''' Software from the CVMFS 'restricted' area is not available on many of the Trillium and Open OnDemand nodes. We are investigating.&lt;br /&gt;
&lt;br /&gt;
'''Mon Apr 06, 2026, 10:00 pm:''' We will have to reschedule the HPSS update. This attempt didn't work as expected&lt;br /&gt;
&lt;br /&gt;
'''Mon Apr 06, 2026, 8:00 pm:''' HPSS scheduled maintenance: update of HPSS to v11.3_u4 and hsi-htar to v11.3_u1 (bug fixes)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7607</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7607"/>
		<updated>2026-03-25T00:44:30Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Partial3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Up3 | OnDemand|https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Down | HPSS|HPSS}}&lt;br /&gt;
|{{Down | Balam|Balam}}&lt;br /&gt;
|{{Down | S4H | S4H}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Partial | Teach|Teach}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Tue Mar 24, 2026, 8:45 pm:''' Open OnDemand is operational again.&lt;br /&gt;
&lt;br /&gt;
'''Tue Mar 24, 2026, 1:00 pm:''' External connectivity is back. &lt;br /&gt;
&lt;br /&gt;
'''Tue Mar 24, 2026, 12:05 pm:''' External connectivity to the data centre was lost. &lt;br /&gt;
&lt;br /&gt;
'''Tue Mar 24, 2026, 7:00 am:''' Maintenance has started.&lt;br /&gt;
&lt;br /&gt;
'''Mon Mar 16, 2026. 13:30pm''' Recovering.  Almost all systems are up again. Please resubmit your jobs that crashed. &lt;br /&gt;
&lt;br /&gt;
'''Mon Mar 16, 2026. 12:00pm''' Power glitch at the data centre caused compute nodes to go down.&lt;br /&gt;
&lt;br /&gt;
'''Thu Mar 12, 2026, 4:15 pm''' Connection to Trillium are operational again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Mar 12, 2026, 1:00 pm''' We've had some login issues particularly for Trillium-GPU. We're investigating.&lt;br /&gt;
&lt;br /&gt;
'''Downtime Announcement:'''  The winter cooling tower maintenance for the SciNet data centre will take place on March 24 and 25, 2026, starting at 7:00 a.m. on the 24th.  All SciNet systems (Trillium, OnDemand, Balam, S4H, Teach, as well as hosted equipment) will have their compute nodes shut down. Login nodes, file systems, and the HPSS system will remain available, and&lt;br /&gt;
jobs will be held in the queue until maintenance is complete.  Starting 7am on Mar 23, users are encouraged to submit small and short jobs that may be scheduled before the maintenance begins.&lt;br /&gt;
&lt;br /&gt;
'''Fri Feb 20, 2026, 11:35 pm:''' Power glitch, ~480 compute nodes rebooted. Regional power quality has been quite poor lately ([https://www.yorkregion.com/news/road-salt-blamed-for-power-outages/article_1a36d25d-5f97-56ee-a0c7-c49c7b732d38.html 1],&lt;br /&gt;
[https://www.yorkregion.com/news/power-company-executive-responds-to-york-region-outages/article_c4d072e7-2892-5c9c-8deb-ac5e1936779c.html 2]).&lt;br /&gt;
&lt;br /&gt;
'''Thu Feb 19, 2026, 3:00 pm:''' Systems restored. Please report issues to support@scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Tue Feb 17, 2026, 8:40 am:''' Power outage at the data centre.  Cooling issues have developed as a result.  Major systems (Trillium, S4H) are expected to be down until sometime Thursday. Login nodes and file systems will remain accessible.&lt;br /&gt;
&lt;br /&gt;
'''Mon Feb 16, 2026, 8:40 pm:''' Electricity is unstable in the data centre area due to severe snowfall.&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 1:40 pm:''' All services are operational again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 12:00 pm:''' The Trillium and Open OnDemand compute nodes are operational again. We are still working on bringing Balam, Neptune and S4H nodes up again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 10:00 am:''' There was a power glitch at the data centre overnight. The login nodes are accessible but the compute nodes are down.  &lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7508</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7508"/>
		<updated>2026-01-29T18:41:15Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Up3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Up3 | OnDemand|https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Up | Balam|Balam}}&lt;br /&gt;
|{{Up | S4H | S4H}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | Teach|Teach}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 1:40 pm:''' All services are operational again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 12:00 pm:''' The Trillium and Open OnDemand compute nodes are operational again. We are still working on bringing Balam, Neptune and S4H nodes up again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 10:00 am:''' There was a power glitch at the data centre overnight. The login nodes are accessible but the compute nodes are down.  &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 16, 2026, 11:00 pm:''' HPSS is back online, and accessible via alliancecan#hpss Globus endpoint. &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 15, 2026, 10:00 pm:''' HPSS will undergo maintenance on Friday morning, Jan/16/2025, , including alliancecan#hpss Globus endpoint &lt;br /&gt;
&lt;br /&gt;
'''Tue Jan 6, 2026, 10:15 am:''' OnDemand has been fixed and is working again.&lt;br /&gt;
&lt;br /&gt;
'''Mon Jan 5, 2026, 9:00 pm:''' The authentication mechanism of OnDemand is not working.&lt;br /&gt;
&lt;br /&gt;
'''Wed Dec 31, 2025, 12:40 pm:''' We believe the problem has now been resolved.  Please let us know if you still experience login problems or aborted jobs.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 30, 2025, 2:10 pm:''' We are experiencing problems with authentication, resulting in failed logins, OOD errors, and aborted jobs (with &amp;quot;prolog error&amp;quot;).  Please bear with us, as we are very short-staffed during the holiday break.  We will post updates here.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 3, 2025, 11:30 am:''' Open OnDemand is fully operational again.&lt;br /&gt;
&lt;br /&gt;
'''Sat Nov 29, 2025, 00:40 am:''' There has been a problem with the water chiller. Some systems are offline.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 12:55 pm:''' Balam is back online.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 10:00 am:''' Open OnDemand is back online.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7505</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7505"/>
		<updated>2026-01-29T17:01:32Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Up3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Up3 | OnDemand|https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Down | Balam|Balam}}&lt;br /&gt;
|{{Down | S4H | S4H}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | Teach|Teach}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 12:00 am:''' The Trillium and Open OnDemand compute nodes are operational again. We are still working on bringing Balam, Neptune and S4H nodes up again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 10:00 am:''' There was a power glitch at the data centre overnight. The login nodes are accessible but the compute nodes are down.  &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 16, 2026, 11:00 pm:''' HPSS is back online, and accessible via alliancecan#hpss Globus endpoint. &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 15, 2026, 10:00 pm:''' HPSS will undergo maintenance on Friday morning, Jan/16/2025, , including alliancecan#hpss Globus endpoint &lt;br /&gt;
&lt;br /&gt;
'''Tue Jan 6, 2026, 10:15 am:''' OnDemand has been fixed and is working again.&lt;br /&gt;
&lt;br /&gt;
'''Mon Jan 5, 2026, 9:00 pm:''' The authentication mechanism of OnDemand is not working.&lt;br /&gt;
&lt;br /&gt;
'''Wed Dec 31, 2025, 12:40 pm:''' We believe the problem has now been resolved.  Please let us know if you still experience login problems or aborted jobs.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 30, 2025, 2:10 pm:''' We are experiencing problems with authentication, resulting in failed logins, OOD errors, and aborted jobs (with &amp;quot;prolog error&amp;quot;).  Please bear with us, as we are very short-staffed during the holiday break.  We will post updates here.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 3, 2025, 11:30 am:''' Open OnDemand is fully operational again.&lt;br /&gt;
&lt;br /&gt;
'''Sat Nov 29, 2025, 00:40 am:''' There has been a problem with the water chiller. Some systems are offline.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 12:55 pm:''' Balam is back online.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 10:00 am:''' Open OnDemand is back online.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7502</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7502"/>
		<updated>2026-01-29T16:17:44Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Down3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Down3 | OnDemand|https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Down | Balam|Balam}}&lt;br /&gt;
|{{Up | S4H | S4H}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | Teach|Teach}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 10:00 am:''' There was a power glitch at the data centre overnight. The login nodes are accessible but the compute nodes are down.  &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 16, 2026, 11:00 pm:''' HPSS is back online, and accessible via alliancecan#hpss Globus endpoint. &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 15, 2026, 10:00 pm:''' HPSS will undergo maintenance on Friday morning, Jan/16/2025, , including alliancecan#hpss Globus endpoint &lt;br /&gt;
&lt;br /&gt;
'''Tue Jan 6, 2026, 10:15 am:''' OnDemand has been fixed and is working again.&lt;br /&gt;
&lt;br /&gt;
'''Mon Jan 5, 2026, 9:00 pm:''' The authentication mechanism of OnDemand is not working.&lt;br /&gt;
&lt;br /&gt;
'''Wed Dec 31, 2025, 12:40 pm:''' We believe the problem has now been resolved.  Please let us know if you still experience login problems or aborted jobs.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 30, 2025, 2:10 pm:''' We are experiencing problems with authentication, resulting in failed logins, OOD errors, and aborted jobs (with &amp;quot;prolog error&amp;quot;).  Please bear with us, as we are very short-staffed during the holiday break.  We will post updates here.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 3, 2025, 11:30 am:''' Open OnDemand is fully operational again.&lt;br /&gt;
&lt;br /&gt;
'''Sat Nov 29, 2025, 00:40 am:''' There has been a problem with the water chiller. Some systems are offline.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 12:55 pm:''' Balam is back online.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 10:00 am:''' Open OnDemand is back online.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7496</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7496"/>
		<updated>2026-01-29T15:04:09Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Down | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Down | OnDemand|https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Up | Balam|Balam}}&lt;br /&gt;
|{{Up | S4H | S4H}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | Teach|Teach}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 29, 2026, 10:00 am:''' There was a power glitch at the data centre overnight. The login nodes are accessible but the compute nodes are down.  &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 16, 2026, 11:00 pm:''' HPSS is back online, and accessible via alliancecan#hpss Globus endpoint. &lt;br /&gt;
&lt;br /&gt;
'''Thu Jan 15, 2026, 10:00 pm:''' HPSS will undergo maintenance on Friday morning, Jan/16/2025, , including alliancecan#hpss Globus endpoint &lt;br /&gt;
&lt;br /&gt;
'''Tue Jan 6, 2026, 10:15 am:''' OnDemand has been fixed and is working again.&lt;br /&gt;
&lt;br /&gt;
'''Mon Jan 5, 2026, 9:00 pm:''' The authentication mechanism of OnDemand is not working.&lt;br /&gt;
&lt;br /&gt;
'''Wed Dec 31, 2025, 12:40 pm:''' We believe the problem has now been resolved.  Please let us know if you still experience login problems or aborted jobs.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 30, 2025, 2:10 pm:''' We are experiencing problems with authentication, resulting in failed logins, OOD errors, and aborted jobs (with &amp;quot;prolog error&amp;quot;).  Please bear with us, as we are very short-staffed during the holiday break.  We will post updates here.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 3, 2025, 11:30 am:''' Open OnDemand is fully operational again.&lt;br /&gt;
&lt;br /&gt;
'''Sat Nov 29, 2025, 00:40 am:''' There has been a problem with the water chiller. Some systems are offline.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 12:55 pm:''' Balam is back online.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 10:00 am:''' Open OnDemand is back online.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7484</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7484"/>
		<updated>2026-01-07T20:01:30Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The Open OnDemand quickstart guide has been moved [https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart here].&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7481</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7481"/>
		<updated>2026-01-07T20:00:11Z</updated>

		<summary type="html">&lt;p&gt;Willis2: Replaced content with &amp;quot;{|align=right |- |480px |- |}  The Open OnDemand quickstart guide has been moved [https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand quickstart guide has been moved [https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart here].&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=MediaWiki:Sidebar&amp;diff=7475</id>
		<title>MediaWiki:Sidebar</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=MediaWiki:Sidebar&amp;diff=7475"/>
		<updated>2026-01-06T21:28:45Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;* Systems&lt;br /&gt;
** https://docs.alliancecan.ca/wiki/Trillium_Quickstart | Trillium&lt;br /&gt;
** HPSS |HPSS&lt;br /&gt;
** Balam |Balam&lt;br /&gt;
** Teach | Teach Cluster&lt;br /&gt;
** https://docs.alliancecan.ca/wiki/Trillium_Open_OnDemand_Quickstart | Open OnDemand&lt;br /&gt;
* Knowledge Base&lt;br /&gt;
** FAQ|FAQ&lt;br /&gt;
** Using_modules | Using modules&lt;br /&gt;
** Slurm | Slurm scheduler&lt;br /&gt;
** Data_Management | Data management&lt;br /&gt;
** Security_Hub | Security Hub&lt;br /&gt;
* navigation&lt;br /&gt;
** Main Page|Main Page&lt;br /&gt;
** recentchanges-url|recentchanges&lt;br /&gt;
** randompage-url|randompage&lt;br /&gt;
** helppage|help&lt;br /&gt;
* SEARCH&lt;br /&gt;
* TOOLBOX&lt;br /&gt;
* LANGUAGES&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7472</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7472"/>
		<updated>2026-01-06T15:24:31Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Up3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Up | OnDemand|Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Up | Balam|Balam}}&lt;br /&gt;
|{{Up | S4H | S4H}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | Teach|Teach}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Tue Jan 6, 2026, 10:15 am:''' OnDemand has been fixed and is working again.&lt;br /&gt;
&lt;br /&gt;
'''Mon Jan 5, 2026, 9:00 pm:''' The authentication mechanism of OnDemand is not working.&lt;br /&gt;
&lt;br /&gt;
'''Wed Dec 31, 2025, 12:40 pm:''' We believe the problem has now been resolved.  Please let us know if you still experience login problems or aborted jobs.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 30, 2025, 2:10 pm:''' We are experiencing problems with authentication, resulting in failed logins, OOD errors, and aborted jobs (with &amp;quot;prolog error&amp;quot;).  Please bear with us, as we are very short-staffed during the holiday break.  We will post updates here.&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 3, 2025, 11:30 am:''' Open OnDemand is fully operational again.&lt;br /&gt;
&lt;br /&gt;
'''Sat Nov 29, 2025, 00:40 am:''' There has been a problem with the water chiller. Some systems are offline.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 12:55 pm:''' Balam is back online.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 10:00 am:''' Open OnDemand is back online.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7451</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7451"/>
		<updated>2025-12-16T19:49:39Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|link=Special:FilePath/ood-dashboard.png|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|link=Special:FilePath/ood-file-browser.png|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png|300px|link=Special:FilePath/Globus_button.png]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|link=Special:FilePath/ood-oc-shortcuts.png|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png|100px|link=Special:FilePath/ood-oc-gpus.png]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png|400px|link=Special:FilePath/ood-oc-job-submit.png]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|link=Special:FilePath/ood-oc-job.png|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|link=Special:FilePath/ood-oc-history.png|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|link=Special:FilePath/ood-active-jobs.png|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px|link=Special:FilePath/jupyter-submit.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px|link=Special:FilePath/ood_session_tab.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px|link=Special:FilePath/jupyter-session.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:FilePath/ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|link=Special:FilePath/ood-terminal.png|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|link=Special:FilePath/ood-session-id.png|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 12) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7448</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7448"/>
		<updated>2025-12-16T19:43:56Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Job submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|link=Special:FilePath/ood-dashboard.png|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|link=Special:FilePath/ood-file-browser.png|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png|300px|link=Special:FilePath/Globus_button.png]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|link=Special:FilePath/ood-oc-shortcuts.png|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png|100px|link=Special:FilePath/ood-oc-gpus.png]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png|400px|link=Special:FilePath/ood-oc-job-submit.png]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|link=Special:FilePath/ood-oc-job.png|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|link=Special:FilePath/ood-oc-history.png|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|link=Special:FilePath/ood-active-jobs.png|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px|link=Special:FilePath/jupyter-submit.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px|link=Special:FilePath/ood_session_tab.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px|link=Special:FilePath/jupyter-session.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:FilePath/ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|link=Special:FilePath/ood-terminal.png|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|link=Special:FilePath/ood-session-id.png|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7445</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7445"/>
		<updated>2025-12-16T19:42:45Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|link=Special:FilePath/ood-dashboard.png|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|link=Special:FilePath/ood-file-browser.png|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png|300px|link=Special:FilePath/Globus_button.png]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|link=Special:FilePath/ood-oc-shortcuts.png|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png|400px|link=Special:FilePath/ood-oc-job-submit.png]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|link=Special:FilePath/ood-oc-job.png|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|link=Special:FilePath/ood-oc-history.png|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|link=Special:FilePath/ood-active-jobs.png|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px|link=Special:FilePath/jupyter-submit.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px|link=Special:FilePath/ood_session_tab.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px|link=Special:FilePath/jupyter-session.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:FilePath/ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|link=Special:FilePath/ood-terminal.png|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|link=Special:FilePath/ood-session-id.png|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7442</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7442"/>
		<updated>2025-12-16T19:40:36Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|link=Special:FilePath/ood-dashboard.png|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|link=Special:FilePath/ood-file-browser.png|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|link=Special:FilePath/ood-oc-shortcuts.png|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|link=Special:FilePath/ood-oc-job.png|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|link=Special:FilePath/ood-oc-history.png|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|link=Special:FilePath/ood-active-jobs.png|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px|link=Special:FilePath/jupyter-submit.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px|link=Special:FilePath/ood_session_tab.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px|link=Special:FilePath/jupyter-session.png]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:FilePath/ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|link=Special:FilePath/ood-terminal.png|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|link=Special:FilePath/ood-session-id.png|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7439</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7439"/>
		<updated>2025-12-16T19:36:38Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|link=Special:FilePath/ood-dashboard.png|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:FilePath/ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7436</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7436"/>
		<updated>2025-12-16T19:35:33Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Running an application GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:FilePath/ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7433</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7433"/>
		<updated>2025-12-16T19:34:43Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Running an application GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:File:ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7430</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7430"/>
		<updated>2025-12-16T19:34:01Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Running an application GUI */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|link=Special:ood-desktop-octave.png|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7427</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7427"/>
		<updated>2025-12-16T19:25:00Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Interactive applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7424</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7424"/>
		<updated>2025-12-16T19:17:54Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Job submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 100px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7421</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7421"/>
		<updated>2025-12-16T19:17:42Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Job submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 200px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-gpus.png&amp;diff=7418</id>
		<title>File:Ood-oc-gpus.png</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-gpus.png&amp;diff=7418"/>
		<updated>2025-12-16T19:17:25Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7415</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7415"/>
		<updated>2025-12-16T19:16:13Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Job submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [[File:ood-oc-gpus.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7412</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7412"/>
		<updated>2025-12-16T19:14:38Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [File:ood-oc-gpus.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7409</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7409"/>
		<updated>2025-12-16T18:32:02Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
* '''Cluster''': allows you to change which cluster to submit your job to, e.g. Trillium (default) or Trillium-GPU. Selecting Trillium-GPU will provide an additional job parameter to request GPU resources [File:ood-oc-gpus.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Trillium Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Running an application GUI=&lt;br /&gt;
&lt;br /&gt;
If you would like to run software that has a graphical user interface (GUI) and is not yet installed as an interactive application, such as Octave or Blender, you can do so using the '''Trillium Desktop''' application. This app provides a remote desktop environment that you can access through your web browser. In the following example we will run Octave's GUI:&lt;br /&gt;
&lt;br /&gt;
# Navigate to the '''Interactive Apps''' tab and select '''Trillium Desktop''' from the drop-down.&lt;br /&gt;
# You will be taken to the job submission page. Choose how many cores and amount of memory you would like to allocate for your session in addition to your job length in hours. Then click on the '''Launch''' button to submit your job to the queue.&lt;br /&gt;
# This will take you to the '''My Interactive Sessions''' page. Once your job is running, you have the option to improve the '''Image Quality''' and '''Image Compression''' of the desktop session. Depending on the speed of your internet connection you may want to set these lower to improve performance and responsiveness of the desktop. Click on the '''Connect to Trillium Desktop''' button to launch the remote desktop environment in a new tab.&lt;br /&gt;
# Once the desktop environment has loaded, open a terminal window using the desktop shortcut and load the required modules for Octave:&lt;br /&gt;
#:&amp;lt;pre&amp;gt; $ module load StdEnv/2023 gcc/12.3 openmpi/4.1.5 octave/7.2.0&amp;lt;/pre&amp;gt;&lt;br /&gt;
# Now launch Octave's GUI by typing &amp;lt;code&amp;gt;octave --gui&amp;lt;/code&amp;gt; in the terminal window.&lt;br /&gt;
&lt;br /&gt;
You should now see Octave's GUI appear in the remote desktop environment. You can use this method to run other GUI applications as well, just make sure to load the appropriate modules before launching the application. Applications may have different ways to launch their GUI, so please refer to the application's documentation for more information. You can see the list of binaries installed for a given application by looking at it's environment variable, e.g. run &amp;lt;code&amp;gt;ls $EBROOTOCTAVE/bin&amp;lt;/code&amp;gt; to see the list of Octave binaries.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-desktop-octave.png|thumb|centre|600px|Figure 10: Octave GUI running in a Trillium Desktop.]]&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 10: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 11: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=File:Ood-desktop-octave.png&amp;diff=7406</id>
		<title>File:Ood-desktop-octave.png</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=File:Ood-desktop-octave.png&amp;diff=7406"/>
		<updated>2025-12-16T18:11:11Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7394</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7394"/>
		<updated>2025-12-09T20:25:13Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Job submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID: [[File:ood-oc-job-submit.png | 400px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported Applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 10: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 11: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7391</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7391"/>
		<updated>2025-12-09T20:23:00Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Monitoring Jobs in Open Composer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* '''Job ID''': displays detailed Slurm information about the job&lt;br /&gt;
* '''Application''': opens the job script editor of the template you used&lt;br /&gt;
* '''Script Location''': opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* '''Script Name''': displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported Applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 10: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 11: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7388</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7388"/>
		<updated>2025-12-09T20:21:42Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Job submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* '''Script Location''': specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* '''Script Name''': specifies the name of the job script file.&lt;br /&gt;
* '''Job Name''': specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported Applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 10: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 11: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7385</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7385"/>
		<updated>2025-12-09T20:19:46Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Job submission */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler and save your script to the '''Script Location'''. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
To resubmit or modify a previously run job click on the job script under the '''Script Name''' column and click '''Load Parameters'''. This will take you back to the job submission page where further modifications can be made to the job.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported Applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 10: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 11: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7379</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7379"/>
		<updated>2025-12-08T15:22:28Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. &lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 3: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 4: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 5: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported Applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 6: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 8: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 9: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 10: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 11: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7376</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7376"/>
		<updated>2025-12-08T14:32:07Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Supported Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Open Composer=&lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 8: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 9: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 10: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported Applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
* Python Slurm Job&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-shortcuts.png&amp;diff=7373</id>
		<title>File:Ood-oc-shortcuts.png</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-shortcuts.png&amp;diff=7373"/>
		<updated>2025-12-08T14:23:33Z</updated>

		<summary type="html">&lt;p&gt;Willis2: Willis2 uploaded a new version of File:Ood-oc-shortcuts.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7349</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7349"/>
		<updated>2025-12-03T20:18:57Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Up3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Down | Niagara|Niagara_Quickstart}}&lt;br /&gt;
|{{Down | Teach|Teach}}&lt;br /&gt;
|{{Down | Rouge|Rouge}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | OnDemand|Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up3 | Scheduler|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Submitting_jobs_to_the_scheduler}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Up | Burst Buffer|Burst_Buffer}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Up3 | Login Nodes|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up  | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | Balam|Balam}}&lt;br /&gt;
|{{Up3 | Cvmfs|https://docs.alliancecan.ca/wiki/Standard_software_environments}}&lt;br /&gt;
|{{Up | S4H | S4H}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Tue Dec 3, 2025, 11:30 am:''' Open OnDemand is fully operational again.&lt;br /&gt;
&lt;br /&gt;
'''Sat Nov 29, 2025, 00:40 am:''' There has been a problem with the water chiller. Some systems are offline.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 12:55 pm:''' Balam is back online.&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 10:00 am:''' Open OnDemand is back online.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7322</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7322"/>
		<updated>2025-11-26T21:44:09Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Open Composer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Open Composer=&lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 8: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 9: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 10: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Supported Applications==&lt;br /&gt;
&lt;br /&gt;
Open Composer currently supports the following applications:&lt;br /&gt;
&lt;br /&gt;
* MPI Slurm Job&lt;br /&gt;
* OpenMP Slurm Job&lt;br /&gt;
* Hybrid MPI/OpenMP Slurm Job&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7319</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7319"/>
		<updated>2025-11-26T21:38:18Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Monitoring Jobs in Open Composer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Open Composer=&lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 8: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 9: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script. Clicking on the the small terminal icon will open a terminal in the job script location.&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 10: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7316</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7316"/>
		<updated>2025-11-26T21:33:30Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Monitoring Jobs in Open Composer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Open Composer=&lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 8: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 9: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|center|600px|Figure 10: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-history.png&amp;diff=7313</id>
		<title>File:Ood-oc-history.png</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-history.png&amp;diff=7313"/>
		<updated>2025-11-26T21:32:22Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7310</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7310"/>
		<updated>2025-11-26T21:30:50Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Open Composer */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Open Composer=&lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 8: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|center|600px|Figure 9: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|right|600px|Figure 10: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7307</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7307"/>
		<updated>2025-11-26T21:30:33Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Open Composer=&lt;br /&gt;
&lt;br /&gt;
The [https://github.com/RIKEN-RCCS/OpenComposer Open Composer] app provides a suite of Slurm job template scripts that can be submitted directly to the Trillium scheduler. It also provides an interface to monitor your submitted jobs, via the '''History''' tab. You can access Open Composer by navigating to the '''Jobs''' drop-down menu and selecting '''Open Composer''' or by clicking on one of the Slurm job templates e.g. '''MPI Slurm Job''', '''OpenMP Slurm Job''' and '''Hybrid MPI/OpenMP Slurm Job'''.&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-shortcuts.png|thumb|right|600px|Figure 8: Open Composer shortcuts.]]&lt;br /&gt;
&lt;br /&gt;
Once you have selected a job template, you will be taken to the job submission page. This is split between the job parameters on the left and the job script itself on the right. The job parameters let you control how many resources your job will use, such as the number of nodes, number of tasks per node, wall clock time and output file name. The job script section displays the script that will be submitted to the scheduler. Any changes made to the job parameters will be reflected in the job script automatically. You may also edit the job script directly if you wish.&lt;br /&gt;
&lt;br /&gt;
The extra fields at the top of the page allow you to change how your job is submitted:&lt;br /&gt;
&lt;br /&gt;
* Script Location: specifies the directory where the job script will be saved and where your job will be run from.&lt;br /&gt;
* Script Name: specifies the name of the job script file.&lt;br /&gt;
* Job Name: specifies the name of the job that will appear in the job queue.&lt;br /&gt;
&lt;br /&gt;
Once you are happy with your job script, click on the '''Submit''' button to submit the job to the scheduler. If your job was submitted successfully, you will see a confirmation message at the top of the page with your job ID [[File:ood-oc-job-submit.png | 300px]].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-job.png|thumb|right|600px|Figure 9: Open Composer job script editor.]]&lt;br /&gt;
&lt;br /&gt;
Note: The template scripts provided in Open Composer are basic examples to get you started. You will need to modify the job script further to suit your specific needs, such as loading your required modules and specifying input/output files.&lt;br /&gt;
&lt;br /&gt;
==Monitoring Jobs in Open Composer==&lt;br /&gt;
&lt;br /&gt;
To monitor your submitted jobs in Open Composer, navigate to the '''History''' tab. This will display a list of all your submitted jobs, along with their status: Queued, Running, Completed, Failed. You can filter the jobs by using the '''Filter''' text box at the top right or by using the checkboxes below. Clicking on different column fields will give different information about the job:&lt;br /&gt;
&lt;br /&gt;
* Job ID: displays detailed Slurm information about the job&lt;br /&gt;
* Application: opens the job script editor of the template you used&lt;br /&gt;
* Script Location: opens an OOD file browser window at the location of the job script&lt;br /&gt;
* Script Name: displays the job script that was submitted to the scheduler&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-oc-history.png|thumb|right|600px|Figure 10: Open Composer job monitoring.]]&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 11: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 12: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-job-submit.png&amp;diff=7304</id>
		<title>File:Ood-oc-job-submit.png</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-job-submit.png&amp;diff=7304"/>
		<updated>2025-11-26T21:21:26Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-job.png&amp;diff=7298</id>
		<title>File:Ood-oc-job.png</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-job.png&amp;diff=7298"/>
		<updated>2025-11-26T21:19:24Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-shortcuts.png&amp;diff=7295</id>
		<title>File:Ood-oc-shortcuts.png</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=File:Ood-oc-shortcuts.png&amp;diff=7295"/>
		<updated>2025-11-26T21:19:01Z</updated>

		<summary type="html">&lt;p&gt;Willis2: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7292</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7292"/>
		<updated>2025-11-26T20:17:57Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Installed Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://github.com/RIKEN-RCCS/OpenComposer Open Composer]&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 7: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 8: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7265</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7265"/>
		<updated>2025-11-05T15:03:09Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Up3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Down | Niagara|Niagara_Quickstart}}&lt;br /&gt;
|{{Down | Teach|Teach}}&lt;br /&gt;
|{{Down | Rouge|Rouge}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | OnDemand|Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up3 | Scheduler|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Submitting_jobs_to_the_scheduler}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Down | Burst Buffer|Burst_Buffer}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Up3 | Login Nodes|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up  | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Down | Balam|Balam}}&lt;br /&gt;
|{{Up3 | Cvmfs|https://docs.alliancecan.ca/wiki/Standard_software_environments}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Wed Nov 5, 2025, 10:00 am:''' Open OnDemand is back online.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7262</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7262"/>
		<updated>2025-11-05T15:02:07Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Up3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Down | Niagara|Niagara_Quickstart}}&lt;br /&gt;
|{{Down | Teach|Teach}}&lt;br /&gt;
|{{Down | Rouge|Rouge}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | OnDemand|Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up3 | Scheduler|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Submitting_jobs_to_the_scheduler}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Down | Burst Buffer|Burst_Buffer}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Up3 | Login Nodes|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up  | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Down | Balam|Balam}}&lt;br /&gt;
|{{Up3 | Cvmfs|https://docs.alliancecan.ca/wiki/Standard_software_environments}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7259</id>
		<title>Main Page</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Main_Page&amp;diff=7259"/>
		<updated>2025-11-05T15:01:57Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* System Status */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__NOTOC__&lt;br /&gt;
{| style=&amp;quot;border-spacing:10px; width: 95%&amp;quot;&lt;br /&gt;
| style=&amp;quot;padding:1em; padding-top:.1em; border:2px solid #0645ad; background-color:#f6f6f6; border-radius:7px&amp;quot;|&lt;br /&gt;
&lt;br /&gt;
==System Status==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Use &amp;quot;Up&amp;quot;, &amp;quot;Partial&amp;quot; or &amp;quot;Down&amp;quot;; these are templates. --&amp;gt;&lt;br /&gt;
{|style=&amp;quot;width:100%&amp;quot; &lt;br /&gt;
|{{Up3 | Trillium|https://docs.alliancecan.ca/wiki/Trillium_Quickstart}}&lt;br /&gt;
|{{Down | Niagara|Niagara_Quickstart}}&lt;br /&gt;
|{{Down | Teach|Teach}}&lt;br /&gt;
|{{Down | Rouge|Rouge}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up3 | OnDemand|Open_OnDemand_Quickstart}}&lt;br /&gt;
|{{Up3 | Scheduler|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Submitting_jobs_to_the_scheduler}}&lt;br /&gt;
|{{Up3 | File system|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Storage}}&lt;br /&gt;
|{{Down | Burst Buffer|Burst_Buffer}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Up | HPSS|HPSS}}&lt;br /&gt;
|{{Up3 | Login Nodes|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up3 | External Network|https://docs.alliancecan.ca/wiki/Trillium_Quickstart#Logging_in}} &lt;br /&gt;
|{{Up  | Globus |Globus}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Down | Balam|Balam}}&lt;br /&gt;
|{{Up3 | Cvmfs|https://docs.alliancecan.ca/wiki/Standard_software_environments}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 11:00 pm:''' Most of the work is done, data movers, Globus, and HPSS are back online. Remaining services will be worked on tomorrow.&lt;br /&gt;
&lt;br /&gt;
'''Tue Nov 4, 2025, 8:30 am:''' Scheduled network maintenance. Trillium cluster is *not* affected.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 17:30 am:''' Balam maintenance finished.&lt;br /&gt;
&lt;br /&gt;
'''Tue Oct 21, 2025, 7:00 am:''' Balam maintenance day.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:55 pm:''' Trillium inbound connections through trillium.alliancecan.ca or trillium.scinet.utoronto.ca are working again.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 15, 2025, 3:05 pm:''' Trillium is experiencing external network issues for both incoming traffic. Please try: ssh USERNAME@tri-login01.scinet.utoronto.ca in the meantime.&lt;br /&gt;
 &lt;br /&gt;
'''Thu Oct 06, 2025, 8:00 pm:''' HPSS is fully functional. You may submit archive jobs from trillium login nodes, datamovers and robots.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 03, 2025, 6:30 pm:''' HPSS is back online, and already accessible via alliancecan#hpss Globus endpoint. Directory tree now follows the other Alliance clusters. We're still working on job submission via Slurm&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 0:00 am:''' Niagara compute nodes are now unavailable for regular users. The login nodes will remain available for a while to allow a few last data transfers, although transfers from the Niagara file systems to Trillium are best done on nia-dm1.scinet.utoronto.ca.&lt;br /&gt;
&lt;br /&gt;
'''Thu Oct 01, 2025, 9:30 am:''' HPSS is down for scheduled maintenance, including alliancecan#hpss Globus endpoint&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--  When removing system status entries, please archive them to: --&amp;gt;&lt;br /&gt;
[[Previous messages]]&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing: 10px;width: 100%&amp;quot;&lt;br /&gt;
|valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== QuickStart Guides ==&lt;br /&gt;
* [https://docs.alliancecan.ca/wiki/Trillium_Quickstart Trillium Quickstart]&lt;br /&gt;
* [[Niagara Quickstart]]&lt;br /&gt;
* [[HPSS | HPSS archival storage]]&lt;br /&gt;
* [[Teach|Teach cluster]]&lt;br /&gt;
* [[FAQ | FAQ (frequently asked questions)]]&lt;br /&gt;
* [[Acknowledging SciNet]]&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; style=&amp;quot;margin: 1em; padding:1em; padding-top:.1em; border:2px solid #000; background-color:#fff; border-radius:7px; width: 49.5%&amp;quot; |&lt;br /&gt;
&lt;br /&gt;
== Tutorials, Manuals, etc. ==&lt;br /&gt;
* [https://education.scinet.utoronto.ca SciNet education material]&lt;br /&gt;
* [https://www.youtube.com/c/SciNetHPCattheUniversityofToronto SciNet's YouTube channel]&lt;br /&gt;
* [[Modules specific to Niagara|Software Modules specific to Niagara]] &lt;br /&gt;
* [[Modules for Mist]] &lt;br /&gt;
* [[Commercial software]]&lt;br /&gt;
* [[Burst Buffer]]&lt;br /&gt;
* [[SSH#SSH Keys|SSH keys]]&lt;br /&gt;
* [[SSH Tunneling]]&lt;br /&gt;
* [[Visualization]]&lt;br /&gt;
* [[Running Serial Jobs on Niagara]]&lt;br /&gt;
* [[Jupyter Hub]]&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7250</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7250"/>
		<updated>2025-11-04T16:30:27Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Differences compared to the Jupyter Hub */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 7: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, ParaView, Forge DDT/MAP&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 8: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7238</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7238"/>
		<updated>2025-10-31T13:54:46Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Installed Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please email us at: [mailto:support@scinet.utoronto.ca support@scinet.utoronto.ca].&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 7: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 8: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
	<entry>
		<id>https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7235</id>
		<title>Open OnDemand Quickstart</title>
		<link rel="alternate" type="text/html" href="https://docs.scinet.utoronto.ca/index.php?title=Open_OnDemand_Quickstart&amp;diff=7235"/>
		<updated>2025-10-31T13:52:34Z</updated>

		<summary type="html">&lt;p&gt;Willis2: /* Installed Applications */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{|align=right&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:ood-logo.png|480px]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
= Porting existing virtual environments to Open OnDemand =&lt;br /&gt;
&lt;br /&gt;
'''IMPORTANT: Because of the change of operating system and software stack, your exisiting virtual environment kernels for Python may not work right away in the OnDemand site. You should be able to activate your python environments in a Trillium terminal (see [[Open_OnDemand_Quickstart#Terminal access|Terminal access]]), with all required Trillium modules loaded, and then issue the command &amp;lt;b&amp;gt;&amp;lt;code&amp;gt;venv2jup&amp;lt;/code&amp;gt;&amp;lt;/b&amp;gt; to get them working correctly.'''&lt;br /&gt;
&lt;br /&gt;
=Introduction=&lt;br /&gt;
&lt;br /&gt;
This guide will walk you through the basic steps to get started with the SciNet Open OnDemand portal.&lt;br /&gt;
Open OnDemand (OOD) is a web-based platform that provides access to a wide range of scientific applications and computing resources, such as Jupyter Lab, R Studio, and VS Code. It allows you to interact with Trillium through a web browser instead of via a terminal, without the need to install any software on your local machine. You will be able to perform file management, submit/monitor jobs and run applications interactively. More information on this project can be found at [https://openondemand.org https://openondemand.org].&lt;br /&gt;
&lt;br /&gt;
=Logging into the Open OnDemand portal=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-dashboard.png|thumb|right|600px|Figure 1: Dashboard.]]&lt;br /&gt;
&lt;br /&gt;
To access the Open OnDemand portal, open a web browser and navigate to the following page: https://ondemand.scinet.utoronto.ca. You will be prompted to enter your Alliance username and password, followed by a second factor authentication via Duo or Yubikey. Once you have logged in, you will be taken to the Open OnDemand dashboard. From here you can access the various tools and applications available on the platform.&lt;br /&gt;
&lt;br /&gt;
=File management=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-file-browser.png|thumb|right|600px|Figure 2: File browser.]]&lt;br /&gt;
&lt;br /&gt;
The Open OnDemand platform provides a file browser that allows you to manage your files and directories on the filesystem. To access the file browser, click on the '''Files''' tab and select which directory you want to manage from the drop-down (&amp;lt;code&amp;gt;HOME&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SCRATCH&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;PROJECT&amp;lt;/code&amp;gt;). You will be taken to the file browser interface, where you can:&lt;br /&gt;
&lt;br /&gt;
* Navigate through your directories&lt;br /&gt;
* Upload/download files&lt;br /&gt;
* Create new files/directories&lt;br /&gt;
* Delete files/directories&lt;br /&gt;
* Edit existing files&lt;br /&gt;
&lt;br /&gt;
==Uploading Files==&lt;br /&gt;
&lt;br /&gt;
The current file size upload limit is 10GB, if you need to upload a file larger than this or are facing upload issues due to a bad internet connection for example please try using [https://docs.scinet.utoronto.ca/index.php/Globus Globus]. There is a Globus button in the file browser at the top right, [[File:Globus_button.png | 300px]], which will take you to the Globus web interface where you can login with your Alliance username and password. The path navigated to in the Open OnDemand file browser will be the same path opened in Globus.&lt;br /&gt;
&lt;br /&gt;
=Job submission=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-job-composer.png|thumb|right|600px|Figure 3: Job Composer.]]&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also provides a job submission interface that allows you to submit batch jobs to Trillium. Navigate to the '''Jobs''' tab and select '''Job Composer''', this will take you to the job submission form. From here click on the '''New Job''' button which will offer you the following options:&lt;br /&gt;
&lt;br /&gt;
* '''From Default Template''' - allows you to create a job from scratch&lt;br /&gt;
* '''From Template''' - allows you to select from some example jobs, e.g. MPI and OpenMP&lt;br /&gt;
* '''From Specified Path''' - allows you to use an existing job that you already have on the file system&lt;br /&gt;
* '''From Selected Job''' - copies the current job for you. &lt;br /&gt;
&lt;br /&gt;
You can specify job parameters such as the job script and account name using the '''Job Options''' button. The remaining parameters such as the number of nodes, number of cores, wall clock time, etc. can be modified by editing the job script directly with the '''Open Editor''' button. Once you have filled in the required fields, click on the '''Submit''' button to submit the job.&lt;br /&gt;
&lt;br /&gt;
The page also shows the status of your job so you can see whether it is queued, running or completed. You can also view the output and error logs of the job once it is finished by clicking on the relevant files under the '''Folder Contents''' section of the '''Job Details''' panel to the right.&lt;br /&gt;
&lt;br /&gt;
=Job monitoring=&lt;br /&gt;
&lt;br /&gt;
To get an overview of all your jobs in the queue you can use the job monitoring interface. Navigate to the '''Jobs''' tab and select '''Active Jobs'''. You can filter the jobs by using the '''Filter''' text box at the top right. Columns can also be sorted by clicking on the column headers, for example you can sort by job status (running, completed, failed, etc.). Clicking on &amp;lt;code&amp;gt;&amp;gt;&amp;lt;/code&amp;gt; to the left of a job will show you more details about the job, such as the start/end time, node list and account charged etc. You might also want to show all jobs in the queue, you can do this by clicking on the drop-down menu at the top right and selecting '''All Jobs'''. A more detailed view of your jobs can still be found using the [https://my.scinet.utoronto.ca myscinet portal].&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-active-jobs.png|thumb|center|600px|Figure 4: Active Jobs.]]&lt;br /&gt;
&lt;br /&gt;
=Interactive applications=&lt;br /&gt;
&lt;br /&gt;
Open OnDemand also features interactive applications that can be run directly from your web browser. To access the applications, navigate to the '''Interactive Apps''' tab and select the application you want to run from the drop-down. This will then bring you to the job submission page where you can choose job parameters such as:&lt;br /&gt;
&lt;br /&gt;
* Length of job in hours&lt;br /&gt;
* Number of cores&lt;br /&gt;
* Amount of memory to allocate (GB)&lt;br /&gt;
* Notify me by email when the job starts&lt;br /&gt;
&lt;br /&gt;
When you have chosen your job parameters click on the '''Launch''' button to submit your job to the queue. You will be taken to the '''My Interactive Sessions''' page where you can see the status of your job, i.e. queued, running or completed. Once the job has been assigned a node and is running, you can click on the '''Connect to ...''' button to launch the application. The application will open in a new tab in your browser, and you can interact with it as if it was running locally.&lt;br /&gt;
&lt;br /&gt;
If you would like terminal access to the node where the application is running, to monitor the performance for example you can click on the button beside '''Host''' starting with &amp;lt;code&amp;gt;&amp;gt;_&amp;lt;/code&amp;gt;. This will open a terminal window in your browser where you can run commands on the node directly.&lt;br /&gt;
&lt;br /&gt;
If for whatever reason you would like to kill the job, you can do so by clicking on the red '''Delete''' button in the job panel in the '''My Interactive Sessions''' page.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin: 0 auto; display: table;&amp;quot;&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:jupyter-submit.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 5: Interactive app submission form.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
| &amp;lt;div style=&amp;quot;text-align: center;&amp;quot;&amp;gt;&lt;br /&gt;
    [[Image:ood_session_tab.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 6: Interactive sessions page.&lt;br /&gt;
    [[Image:jupyter-session.png|600px]]&lt;br /&gt;
    &amp;lt;br&amp;gt;Figure 7: Interactive app session.&lt;br /&gt;
  &amp;lt;/div&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installed Applications==&lt;br /&gt;
&lt;br /&gt;
We currently support the following applications:&lt;br /&gt;
&lt;br /&gt;
* [https://jupyter.org Jupyter Lab/Notebook]&lt;br /&gt;
* [https://posit.co/products/open-source/rstudio/?sid=1 Rstudio]&lt;br /&gt;
* [https://code.visualstudio.com VSCode]&lt;br /&gt;
* Desktop&lt;br /&gt;
* [https://www.paraview.org ParaView]&lt;br /&gt;
* [https://www.linaroforge.com Forge DDT/MAP]&lt;br /&gt;
* [https://www.sas.com/en_ca/home.html SAS]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
* [https://www.stata.com Stata]&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you would like an application installed please let us know.&lt;br /&gt;
&lt;br /&gt;
=Terminal access=&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-terminal.png|thumb|right|600px|Figure 7: Terminal]]&lt;br /&gt;
&lt;br /&gt;
Sometimes you might prefer to use a terminal to interact with Trillium, Open OnDemand provides a web-based terminal that you can use to access the command line interface. To access the terminal, navigate to the '''Clusters''' tab and select '''Trillium Shell Access'''. This will open a new tab in your browser with a terminal window where you can run commands as you would in a regular terminal session.&lt;br /&gt;
&lt;br /&gt;
= Differences compared to the Jupyter Hub=&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!feature !! Jupyter Hub (decommissioned) !! Open OnDemand&lt;br /&gt;
|-&lt;br /&gt;
| ''authentication''  || password      || password + MFA&lt;br /&gt;
|-&lt;br /&gt;
| ''first installed''     || 2017          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''last update''         || 2021          || 2025&lt;br /&gt;
|-&lt;br /&gt;
| ''supports''&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python, Julia)&lt;br /&gt;
| Jupyter Notebook, JupyterLab (R, Python), Rstudio, VSCode, Desktop, SAS&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;, Stata&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''start and continue later'' || Yes        || Yes&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''command terminal''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''file management''          || Yes (limited)  || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''monitor jobs''             || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''submit jobs''         || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''core limit''         || 8 cores&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;     || 20 cores (8 for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''memory limit''       || 48 GB&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;       || 85 GB (500 GB for high memory)&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''time limits''         || 3 days&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;      || 3 days&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| ''operating system''                  || CentOS 7      || RockyLinux 9&lt;br /&gt;
|-&lt;br /&gt;
| ''software stack''           || NiaEnv, CCEnv || CCEnv&lt;br /&gt;
|-&lt;br /&gt;
| ''system issue alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''user quota alerts''          || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''error logs''               || No            || Yes&lt;br /&gt;
|-&lt;br /&gt;
| ''hardware''                 || 1 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM ||  62 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 180GB RAM (default)&amp;lt;br&amp;gt;3 x CPU with 40 Intel &amp;quot;CascadeLake&amp;quot; cores at 2.5 GHz, 1TB RAM (high memory)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;1&amp;lt;/sup&amp;gt; Within the requested limits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt; Limits on JupyterHub were not implementated very strictly, so you could temporarily exceed these.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt; Limits need to be requested before starting an application.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;sup&amp;gt;4&amp;lt;/sup&amp;gt; Only for users with a license for these products.&lt;br /&gt;
&lt;br /&gt;
= Debugging Errors =&lt;br /&gt;
&lt;br /&gt;
[[Image:ood-session-id.png|thumb|right|600px|Figure 8: Accessing error logs via the session card]]&lt;br /&gt;
&lt;br /&gt;
If you encounter any errors while using an interactive Open OnDemand job, you can check the logs for more information. To access the logs, navigate to the '''My Interactive Sessions''' tab and find your active session. Click on the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; link (see Figure. 8) to open a separate tab which displays the output of your job. This file contains the standard output and error messages generated by the job, which can help you identify any issues that may have occurred during the session. When submitting a ticket to SciNet support, please include the &amp;lt;code&amp;gt;output.log&amp;lt;/code&amp;gt; file, your '''Session ID''', which is displayed as a long string of characters, e.g. ''' 8feb45fa-bc65-4846-8398-2a73c1bf8e5a''', and any other relevant information to help us assist you more effectively.&lt;/div&gt;</summary>
		<author><name>Willis2</name></author>
	</entry>
</feed>