revolution r and dphs cluster

40
Revolution R and DPHS Cluster Statistical Computing 4/9/14

Upload: gaius

Post on 23-Feb-2016

41 views

Category:

Documents


0 download

DESCRIPTION

Revolution R and DPHS Cluster. Statistical Computing 4/9/14. Revolution R. What is it?. Front End. Back End. What is it?. Single Versus Multi Threading. R uses a single thread. Revolution R uses multiple threads. The Standard R Interface. Revolution R Environment. Script(s). Console. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Revolution R and DPHS Cluster

Revolution R andDPHS Cluster

Statistical Computing4/9/14

Page 2: Revolution R and DPHS Cluster

Revolution R

Page 3: Revolution R and DPHS Cluster

What is it?

Back End

Front End

Page 4: Revolution R and DPHS Cluster

What is it?

Page 5: Revolution R and DPHS Cluster

Single Versus Multi Threading

R uses a single thread

Revolution R uses multiple

threads

Page 6: Revolution R and DPHS Cluster

The Standard R Interface

Page 7: Revolution R and DPHS Cluster

Revolution R Environment

Script(s)

Console

Page 8: Revolution R and DPHS Cluster

Revolution R Environment

Running R Script

Page 9: Revolution R and DPHS Cluster

Revolution R Environment

Running Line or Section

Page 10: Revolution R and DPHS Cluster

Revolution R Environment

Installed/ Loaded

Packages

Available Objects

Object Details

Page 11: Revolution R and DPHS Cluster

Revolution R Environment

Project Manager

Page 12: Revolution R and DPHS Cluster

Project Manager• Solutions

o Corresponds to one R workspace/working directoryo Storage for common files for projects

• Projecto Independent set of R scripts

• Scripts and Documentationo Single Files that can be sourced, run, viewed, etc.

Page 13: Revolution R and DPHS Cluster

Scripts• R syntax checking and parenthesis highlighting• IntelliSense word completion

o CTRL+Space• Setting Breakpoints

o Breakpoints tell the R debugger where to stop execution, so that you can examine the state of the computation at that point.

o Place the cursor anywhere on the desired line and press F9. o Click the gray bar to the left of the desired line.o Repeat the procedure to delete the breakpoint.

• Run all or part of a script in the command window• Set Bookmarks

o Bookmarks make it easy to move from place to place within a large script, and also to move from script to script. You set bookmarks using any of the following methods:

o Place the cursor anywhere on the desired line and press CTRL-K, CTRL-K. o Repeat the procedure to delete the bookmark.

• Automatically comment out sections

Page 14: Revolution R and DPHS Cluster

Snippets• A predefined template for common R idioms

o Insert snippet, then fill in the blankso Right Click ->Insert Snippet

• Code Snippet Managero Create and Share your own snippets (Using XML and Visual Studio)o Allows you to automate programming frequent taskso NOT the same as a SAS macro

• Standardize analyses and enforce coding standards

Page 15: Revolution R and DPHS Cluster

Snippets in Revolution R

Page 16: Revolution R and DPHS Cluster

Snippets in Revolution R

Page 17: Revolution R and DPHS Cluster

Snippets in Revolution R

Page 18: Revolution R and DPHS Cluster

Snippets in Revolution R

Page 19: Revolution R and DPHS Cluster

Debugging• Revolution R has a debugging feature

o Helpful to identify reasons code won’t runo Excellent way to check more complicated code

• Complex analyses• Simulation Studies

o Also extremely helpful if you are writing an R package

Page 20: Revolution R and DPHS Cluster

Debugging in Revolution R

Debugging

Page 21: Revolution R and DPHS Cluster

Debugging in Revolution R

Debugging

Page 22: Revolution R and DPHS Cluster

Available Objects• Inspect objects in current environment

• List installed and loaded packages

• Browse objects in packages

• Inspect and edit data

• Plot data objects

Page 23: Revolution R and DPHS Cluster

Other• Interactive Debug Feature

o Debug vs. Release mode: control whether breakpoints are usedo Step Execution

Page 24: Revolution R and DPHS Cluster

Shortcut ActionCtrl-A Select AllCtrl-B New BreakpointCtrl-C CopyCtrl-F FindCtrl-L Cut current line or selection to clipboardCtrl-N New FileCtrl-O Open FileCtrl-P PrintCtrl+R Ctrl+R, Ctrl+W - View white spaceCtrl+R, Ctrl+S Run SelectionCtrl+R, Ctrl+C Run Current ScriptCtrl-T Transpose charactersCtrl-U Changes selected text to lowercaseCtrl-V Paste

Ctrl-W Selects the word containing the cursor or to the right of the cursor

Ctrl-X CutCtrl-Y RedoCtrl-Z Undo

Page 25: Revolution R and DPHS Cluster
Page 26: Revolution R and DPHS Cluster

DPHS ClusterThis only works for Revolution R Enterprise

Page 27: Revolution R and DPHS Cluster

Accessing The ClusterPHSCLUSTER <- RxHpcServer( #Location of revolution R Enterprise on each node revoPath="C:\\Revolution\\R-Enterprise-Node-6.1\\R- 2.14.2\\bin\\x64", #Location of big Data files on each node dataPath="c:\\data", #User Directory for read/write shareDir="\\Clustershare\\cne2" , )

#Sets Compute Context to the ClusterrxOptions( computeContext = PHSCLUSTER )#Sets Compute Context to the Local MachinerxOptions( computeContext = RxLocalSeq())

Page 28: Revolution R and DPHS Cluster

Accessing The ClusterPHSCLUSTER <- RxHpcServer( #Location of revolution R Enterprise on each node revoPath="C:\\Revolution\\R-Enterprise-Node-6.1\\R- 2.14.2\\bin\\x64", #Location of big Data files on each node dataPath="c:\\data", #User Directory for read/write shareDir="\\Clustershare\\cne2" , )

#Sets Compute Context to the ClusterrxOptions( computeContext = PHSCLUSTER )#Sets Compute Context to the Local MachinerxOptions( computeContext = RxLocalSeq())

Page 29: Revolution R and DPHS Cluster

Accessing The ClusterPHSCLUSTER <- RxHpcServer( #Location of revolution R Enterprise on each node revoPath="C:\\Revolution\\R-Enterprise-Node-6.1\\R- 2.14.2\\bin\\x64", #Location of big Data files on each node dataPath="c:\\data", #User Directory for read/write shareDir="\\Clustershare\\cne2" , )

#Sets Compute Context to the ClusterrxOptions( computeContext = PHSCLUSTER )#Sets Compute Context to the Local MachinerxOptions( computeContext = RxLocalSeq())

Page 30: Revolution R and DPHS Cluster

Accessing The ClusterPHSCLUSTER <- RxHpcServer( #Location of revolution R Enterprise on each node revoPath="C:\\Revolution\\R-Enterprise-Node-6.1\\R- 2.14.2\\bin\\x64", #Location of big Data files on each node dataPath="c:\\data", #User Directory for read/write shareDir="\\Clustershare\\cne2" , )

#Sets Compute Context to the ClusterrxOptions( computeContext = PHSCLUSTER )#Sets Compute Context to the Local MachinerxOptions( computeContext = RxLocalSeq())

Page 31: Revolution R and DPHS Cluster

Accessing The ClusterPHSCLUSTER <- RxHpcServer( #Location of revolution R Enterprise on each node revoPath="C:\\Revolution\\R-Enterprise-Node-6.1\\R- 2.14.2\\bin\\x64", #Location of big Data files on each node dataPath="c:\\data", #User Directory for read/write shareDir="\\Clustershare\\cne2" , )

#Sets Compute Context to the ClusterrxOptions( computeContext = PHSCLUSTER )#Sets Compute Context to the Local MachinerxOptions( computeContext = RxLocalSeq())

Page 32: Revolution R and DPHS Cluster

Accessing The ClusterPHSCLUSTER <- RxHpcServer( #Location of revolution R Enterprise on each node revoPath="C:\\Revolution\\R-Enterprise-Node-6.1\\R- 2.14.2\\bin\\x64", #Location of big Data files on each node dataPath="c:\\data", #User Directory for read/write shareDir="\\Clustershare\\cne2" , )

#Sets Compute Context to the ClusterrxOptions( computeContext = PHSCLUSTER )#Sets Compute Context to the Local MachinerxOptions( computeContext = RxLocalSeq())

Page 33: Revolution R and DPHS Cluster

Accessing The ClusterPHSCLUSTER <- RxHpcServer( #Location of revolution R Enterprise on each node revoPath="C:\\Revolution\\R-Enterprise-Node-6.1\\R- 2.14.2\\bin\\x64", #Location of big Data files on each node dataPath="c:\\data", #User Directory for read/write shareDir="\\Clustershare\\cne2" , )

#Sets Compute Context to the ClusterrxOptions( computeContext = PHSCLUSTER )#Sets Compute Context to the Local MachinerxOptions( computeContext = RxLocalSeq())

Page 34: Revolution R and DPHS Cluster

Setting a Progress Timer

#Create a Progress Bar Objectpb <- winProgressBar(title = "progress bar", min = 0, max = total, width = 300)

for(i in 1:total){ data1<-rnorm(n=100,mean=0,sd=1) #Update the Progress Bar with the Current Unit setWinProgressBar(pb, i, title=paste( round(i/total*100, 0), "% done")) #Pause the system in order to update the progress bar (may not be necessary) #Sys.sleep(0.1)}close(pb)

Page 35: Revolution R and DPHS Cluster

Other Features

Page 36: Revolution R and DPHS Cluster

RevoScaleR Package

Page 37: Revolution R and DPHS Cluster

RevoScaleR Package

Page 38: Revolution R and DPHS Cluster

RevoScaleR Package

Page 39: Revolution R and DPHS Cluster

DeployR

Page 40: Revolution R and DPHS Cluster

DeployR