The ☞ Nero Computing Platform is another Google Cloud-based computational environment that charges based on storage and computational resource usage, and can support large, computationally-intensive analyses. To use this platform for analytic purposes, coding skills are necessary.
Recommended for: Research teams that (1) only contain Stanford personnel/students and individuals with fully-sponsored SUNets (i.e with a Stanford email address), (2) who have the necessary IRB/DRA/DUA agreement(s), (3) funding and a valid PTA, and (4) whose projects are >10TB, need a lot of GPUs, need complex code to run interrupted, or want to use GCP services like BigQuery, Cloud Storage, Compute Engine, etc.
These machines are in Google Cloud so there are cloud costs and setup costs but they are not prohibitive. Approximately $100- 400/month for a typical machine.
You can access Google’s price calculator here (though there’s a Stanford discount that is not reflected in the calculator)
Before using the Nero computing platform, you must first:
Please refer to this demo video, or to the steps below:
(1) Connect to Stanford VPN
Before visiting Nero, you need to join the Stanford Virtual Private Network (VPN) to secure your connection line.
Figure 1: The user interface of Cisco AnyConnect VPN client on Mac OS
"I can't login using the Cardinal Key" ☞ click here to troubleshoot. |
(2) Go to the Nero GCP webpage
(3) Select your desired project
Within Nero GCP, there are several different capabilities you may with to access.
The Compute Engines take the form of a ☞ JupyterLab web interface. Using this interface, you can write and run codes anywhere using modern data processing languages, such as, Python, R, SAS and Stata, in the form of a Notebook.
Figure 2: The JupyterLab Launcher UI tab on Nero
You will also have access to a Home folder and a shared directory within the Compute Engine.
IMPORTANT NOTE: You must disconnect/stop your compute engine when you finish your computational task because y__ou are charged money for the time that the compute engine is running. Instructions on how to stop the compute engine are available here.
Transfer from laptop to Nero GCP (the process is the same as in this video, except that you do it from your laptop rather than from the no-longer-in-existance Nero on-premise):
gsutil -m rsync -r /local/folder/to/transfer
gs://nero-gcp-bucket-name-here/
Note: Some users can create buckets in their Nero GCP projects to transfer to. If you need a bucket to be created for you, please email srcc-support@stanford.edu for assistance.
In this documentation, we are going to give an introduction to Jupyter Notebook on Nero using Python as an example. To create a new Python notebook project, click "Python 3" under the Notebook section. Other data processing languages are also available, such as: R, SAS and Stata.
Figure 4: An animated demonstration on creating a new Jupyter notebook on Nero
Note: This is not a Python tutorial and this section is intended to give a quick look of the Jupyter Notebook on Nero.
In the Jupyter Notebook, you write a piece of code in a space called the cell, represented by a one-line empty text field. The height of the cell is adaptable to the size of your code, so it can get bigger. To run the code, press the SHIFT + ENTER keys on your keyboard or select "Run > Run Selected Cells" on the top menu bar.
Figure 5: Executing a Python command on Jupyter notebook (press Shift+Enter)
If there is an output to be displayed, the notebook will display it immediately at the bottom of the cell, as illustrated by the example above.
The Jupyter Notebook supports the ☞ Markdown syntax to write a well-form documentation text. Similar to writing the Python code, you will write the Markdown-formatted text in a cell too. However, you need to change the setting for that specific cell from "Code" to "Markdown" as illustrated by the image below.
Figure 6: Switching between the "Code" mode and the "Markdown" mode on Jupyter notebook. Use the Markdown mode to write a documentation.
Use the same command: SHIFT + ENTER to render the Markdown-formatted text into a styled text.
Check these excellent public notebooks to see what other people have made and learn from them: The Need for Openness in Data Journalism, by Brian Keegan; San Francisco's Drug Geography, a GIS analysis of public crime data in SF, by Lance Martin; Kaggle Competition: Titanic Machine Learning from Disaster, By Andrew Conti. |
The Jupyter Notebook on Nero supports other programming kernels, such as: R, SAS and Stata. You can select the different kernel from the beginning using the "Launcher" page, or you can change dynamically by selecting an item from the drop-down menu, as illustrated by the image below.
Figure 7: Switching different kernels on Jupyter notebook
The table below shows several important keyboard shortcuts to speed-up your work in the Jupyter Notebook.
Note: You might need to enter the "command mode" first (by pressing the Esc
button) to execute some of the shortcuts below (e.g., A
= insert cell above, M
= change the cell type to Markdown).
Keyboard shortcut | Action |
---|---|
Esc | Enter the command mode. |
Enter | Enter the edit mode. |
Shift + Enter | Run the current cell, and then select the cell below. |
Ctrl + Enter | Just run the current cell. |
A | Insert cell (A)bove. |
B | Insert cell (B)elow. |
D (press the key twice) | Delete the selected cell. |
Y | Change the cell type to "Code". |
M | Change the cell type to "(M)arkdown". |
H | Show all shortcuts. |
The table below shows several common Markdown syntax to create a documentation in your notebook.
Markdown | Action |
---|---|
# Heading 1 | Heading level 1. (Use 2 '#' symbols for heading level 2, 3 '#' symbols for heading level 3, and so on.) |
Bold | Make a bold text. |
Italic | Make an italicized text. |
| Make an ordered list. |
* First item * Second item * Third item | Make an unordered list. |
Inline code | Make an inline code. |
<br>Block<font color="#444444"><span><br></span></font>Code<br> | Make a block of code. |
Text | Make a link, e.g., Duck Duck Go |
More reading resources:
Overview of Nero GCP: https://nero-docs.stanford.edu/gcp-overview.html
Comparison of Nero and Carina: https://carinadocs.stanford.edu/prem-vs-cloud
Nero Account Request Form (Click 'Order Nero GCP' in the bottom left): https://nero-docs.stanford.edu
Introduction to Nero GCP Webinar: Here
Nero Support: https://nero-docs.stanford.edu/help-and-support.html
Nero Office Hours: https://calendly.com/srcc-officehours/nero-officehours
Support Email Address: srcc-support@stanford.edu
Nero Slack Channel: #nero-users