<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.gacrc.uga.edu/index.php?action=history&amp;feed=atom&amp;title=Pong-Sapelo2</id>
	<title>Pong-Sapelo2 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.gacrc.uga.edu/index.php?action=history&amp;feed=atom&amp;title=Pong-Sapelo2"/>
	<link rel="alternate" type="text/html" href="https://wiki.gacrc.uga.edu/index.php?title=Pong-Sapelo2&amp;action=history"/>
	<updated>2026-05-30T11:10:19Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.7</generator>
	<entry>
		<id>https://wiki.gacrc.uga.edu/index.php?title=Pong-Sapelo2&amp;diff=20617&amp;oldid=prev</id>
		<title>Ben: Created page with &quot;Category:Sapelo2Category:SoftwareCategory:Programming   === Category ===  Bioinformatics  === Program On ===  Sapelo2  === Version ===  1.5   === Author / Distribu...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.gacrc.uga.edu/index.php?title=Pong-Sapelo2&amp;diff=20617&amp;oldid=prev"/>
		<updated>2021-11-03T13:48:35Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&lt;a href=&quot;/wiki/Category:Sapelo2&quot; title=&quot;Category:Sapelo2&quot;&gt;Category:Sapelo2&lt;/a&gt;&lt;a href=&quot;/wiki/Category:Software&quot; title=&quot;Category:Software&quot;&gt;Category:Software&lt;/a&gt;&lt;a href=&quot;/wiki/Category:Programming&quot; title=&quot;Category:Programming&quot;&gt;Category:Programming&lt;/a&gt;   === Category ===  Bioinformatics  === Program On ===  Sapelo2  === Version ===  1.5   === Author / Distribu...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Sapelo2]][[Category:Software]][[Category:Programming]]  &lt;br /&gt;
=== Category ===&lt;br /&gt;
&lt;br /&gt;
Bioinformatics&lt;br /&gt;
&lt;br /&gt;
=== Program On ===&lt;br /&gt;
&lt;br /&gt;
Sapelo2&lt;br /&gt;
&lt;br /&gt;
=== Version ===&lt;br /&gt;
&lt;br /&gt;
1.5&lt;br /&gt;
 &lt;br /&gt;
=== Author / Distributor ===&lt;br /&gt;
 &lt;br /&gt;
[http://brown.edu/Research/Ramachandran_Lab/projects/ Pong]&lt;br /&gt;
 &lt;br /&gt;
=== Description ===&lt;br /&gt;
 &lt;br /&gt;
&amp;quot;Fast analysis and visualization of latent clusters in population genetic data&amp;quot; [http://brown.edu/Research/Ramachandran_Lab/projects/ Pong]&lt;br /&gt;
&lt;br /&gt;
=== Running Program ===&lt;br /&gt;
&lt;br /&gt;
====Versions====&lt;br /&gt;
&lt;br /&gt;
Please also refer to [[Running Jobs on Sapelo2]].&lt;br /&gt;
 &lt;br /&gt;
*Pong 1.5 is installed at /apps/eb/pong/1.5-foss-2020b-Python-3.8.6&lt;br /&gt;
&lt;br /&gt;
To use pong 1.5, please load the module:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;gcommand&amp;quot; &amp;gt;&lt;br /&gt;
ml pong/1.5-foss-2020b-Python-3.8.6&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;To use pong on Sapelo2&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
To run pong on Sapelo2 you have to submit a job to the queueing system that will run the pong server and establish a ssh tunnel from the compute node to the login node.&lt;br /&gt;
You will then have to establish another ssh tunnel from your computer to the login node that will let you connect to the pong instance.&lt;br /&gt;
&lt;br /&gt;
In order to establish a ssh tunnel from the compute node to the login node the user has to have ssh keys generated and added to their authorized_keys file. This is &amp;#039;&amp;#039;&amp;#039;not&amp;#039;&amp;#039;&amp;#039; done automatically on Sapelo2.&lt;br /&gt;
&lt;br /&gt;
Perform the following actions in order to check for ssh keys and if need be, create them.&lt;br /&gt;
&lt;br /&gt;
Copy the contents of the script below and paste it in a file, say ssh-keys.sh in your home directory.&lt;br /&gt;
&amp;lt;pre class=&amp;quot;gcommand&amp;quot; &amp;gt;&lt;br /&gt;
[ -f ${HOME}/.ssh/id_rsa ] &amp;amp;&amp;amp; return 0&lt;br /&gt;
&lt;br /&gt;
SSH_CMD=&amp;quot;ssh-keygen -q -t rsa -f ${HOME}/.ssh/id_rsa&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[ $UID -eq 0 ] &amp;amp;&amp;amp; ${SSH_CMD} -N &amp;quot;&amp;quot; || ${SSH_CMD} -P &amp;quot;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
cat ${HOME}/.ssh/id_rsa.pub &amp;gt;&amp;gt; ${HOME}/.ssh/authorized_keys&lt;br /&gt;
&lt;br /&gt;
chmod 600 ${HOME}/.ssh/authorized_keys&lt;br /&gt;
chmod g-w ${HOME}&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then source the file by executing the following command at the command line:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;gcommand&amp;quot; &amp;gt;&lt;br /&gt;
source ssh-keys.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
This will check for the presence of ssh keys and it will create and add it to authorized_keys file if needed.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
====To use pong on Sapelo2 with an interactive job====&lt;br /&gt;
&lt;br /&gt;
The port number for the pong server should be some random value between 8000 and 10000. Assign this value to the variable &amp;#039;NOTEBOOKPORT&amp;#039; in the submission script below replacing 8888. Please do not use 8888. If more than one person uses that same value you cannot establish the ssh tunnel.&lt;br /&gt;
&lt;br /&gt;
Sample steps to use pong 1.5, once you connect to Sapelo2, using pong&amp;#039;s sample data:&lt;br /&gt;
&amp;lt;pre class=&amp;quot;gcommand&amp;quot; &amp;gt;&lt;br /&gt;
interact&lt;br /&gt;
wget https://brown.edu/Research/Ramachandran_Lab/files/pong/pong-example-data_1kG-p3.zip&lt;br /&gt;
unzip pong-example-data_1kG-p3.zip&lt;br /&gt;
cd pong-example-data_1kG-p3&lt;br /&gt;
NOTEBOOKPORT=8888&lt;br /&gt;
IPUSED=$(hostname -i)&lt;br /&gt;
echo &amp;quot;NOTEBOOKPORT is &amp;quot; $NOTEBOOKPORT&lt;br /&gt;
echo &amp;quot;IPUSED is &amp;quot; $IPUSED&lt;br /&gt;
ml pong/1.5-foss-2020b-Python-3.8.6&lt;br /&gt;
pong -m pong_filemap -n pop_order_expandednames.txt -i ind2pop.txt -p 8888&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After running the steps above, establish a another ssh tunnel from your desktop or laptop to sapelo2 login node at port NOTEBOOKPORT. &lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;For Mac/Linux Users&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
If you are using a Linux or Apple machine for your desktop or laptop you can use the following command to establish the ssh tunnel&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Make sure you replace NOTEBOOKPORT and IPUSED below with the port number and the IP address you are using &amp;#039;&amp;#039;&amp;#039; (see the output of the &amp;#039;&amp;#039;&amp;#039;echo&amp;#039;&amp;#039;&amp;#039; commands above)&lt;br /&gt;
&amp;lt;pre class=&amp;quot;gcommand&amp;quot; &amp;gt;&lt;br /&gt;
ssh -N -L NOTEBOOKPORT:IPUSED:NOTEBOOKPORT username@sapelo2.gacrc.uga.edu &lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Unless you have ssh key configured, you will be prompted for your MyID password and for Archpass Duo authentication. Once authentication is established, this session prompt will hang and you are ready to go to the next step.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;For Windows Users&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
If you are using a Windows machine for your desktop or laptop download the &amp;#039;&amp;#039;&amp;#039;[https://the.earth.li/~sgtatham/putty/latest/x86/plink.exe plink program]&amp;#039;&amp;#039;&amp;#039; to use in place of the ssh client.&lt;br /&gt;
The command for windows would be as follows:&lt;br /&gt;
Assuming the plink.exe is in the current directory where you have a command window open.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Make sure you replace NOTEBOOKPORT and IPUSED below with the port number and the IP address you are using &amp;#039;&amp;#039;&amp;#039; (see the output of the &amp;#039;&amp;#039;&amp;#039;echo&amp;#039;&amp;#039;&amp;#039; commands above)&lt;br /&gt;
&amp;lt;pre class=&amp;quot;gcommand&amp;quot; &amp;gt;&lt;br /&gt;
plink -ssh -N -L NOTEBOOKPORT:IPUSED:NOTEBOOKPORT username@sapelo2.gacrc.uga.edu&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Once you establish the ssh tunnel by running the command above you can access pong by going to &amp;#039;&amp;#039;&amp;#039;http://localhost:NOTEBOOKPORT&amp;#039;&amp;#039;&amp;#039; using the browser on your desktop or laptop (make sure you replace NOTEBOOKPORT with the port number you used in the interact session). The interact terminal might show something like this:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre class=&amp;quot;gcommand&amp;quot; &amp;gt;&lt;br /&gt;
-------------------------------------------------------------------&lt;br /&gt;
                            p o n g&lt;br /&gt;
      by A. Behr, K. Liu, T. Devlin, G. Liu-Fang, and S. Ramachandran&lt;br /&gt;
                       Version 1.5 (2021)&lt;br /&gt;
-------------------------------------------------------------------&lt;br /&gt;
-------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
Parsing input and generating cluster network graph&lt;br /&gt;
Matching clusters within each K and finding representative runs&lt;br /&gt;
For K=2, there is 1 mode across 8 runs.&lt;br /&gt;
For K=3, there is 1 mode across 8 runs.&lt;br /&gt;
For K=4, there are 2 modes across 8 runs.&lt;br /&gt;
For K=5, there is 1 mode across 8 runs.&lt;br /&gt;
For K=6, there are 3 modes across 8 runs.&lt;br /&gt;
For K=7, there are 3 modes across 8 runs.&lt;br /&gt;
For K=8, there are 2 modes across 8 runs.&lt;br /&gt;
Matching clusters across K&lt;br /&gt;
Finding best alignment for all runs within and across K&lt;br /&gt;
match time: 7.22s&lt;br /&gt;
align time: 0.02s&lt;br /&gt;
total time: 8.27s&lt;br /&gt;
-----------------------------------------------------------&lt;br /&gt;
pong server is now running locally &amp;amp; listening on port 8888&lt;br /&gt;
Open your web browser and navigate to http://localhost:8888 to see the visualization&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Documentation ===&lt;br /&gt;
 &lt;br /&gt;
Details at http://brown.edu/Research/Ramachandran_Lab/projects/&lt;br /&gt;
 &lt;br /&gt;
=== System ===&lt;br /&gt;
64-bit Linux&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
</feed>