int.eu.grid: A grid infrastructure for interactive applications Gonçalo Borges LIP on behalf of Int.EU.Grid Collaboration INGRID’08, Italy, April 2008
Jan 14, 2016
int.eu.grid:A grid infrastructure for interactive
applications
Gonçalo BorgesLIP
on behalf of Int.EU.Grid Collaboration
INGRID’08, Italy, April 2008
INGRID’08, Italy, April 2008 2
Do you really need to be motivated?
What is interactivity?Feedback channel between you and your applicationInteractivity is strongly connected to visualization
Why interactivity?
Users want answers in seconds and not hoursGrid debug, check application evolution, ...
Is it possible to have it on the grid?Yes it is!!!
Although the several middleware layers and the crossover of multiple administrative domains.
Benifit for you as a grid user?Power of the grid available at your fingertips!
INGRID’08, Italy, April 2008 4
Interactivity on the Grid
VOs and users are anxious to get itNeeded by a wide set of applications in different scientific domains
Interactivity has been neglected by larger Grid projects…Standard grids are aimed to sequential jobs…How to properly set “Matchmaking” and “Brokering” for interactive tasks? How to start the application immediately?
Even in scenarios in which all computing resources might be running batch jobs?
And what about online application input/output?
Int.EU.Grid Provide an advanced grid empowered
infrastructure for scientific computing targeted to support demanding interactive (and parallel)
applications.
INGRID’08, Italy, April 2008 6
Int.EU.Grid grid infrastructure
12 sites, 7 counties
9 in production4 in development
~ 900 COREsXeonOpteronPentium
~ 45 TB of storage space
Interconnection by Geant
INGRID’08, Italy, April 2008 8
Int.EU.Grid services
Distributed servicesTaking advantage of the partners expertiseRedundancyBetter use of resources
Production Core Services• CrossBroker• RAS• BDII• VOMS• LFC• MyProxy
Production Core Services• CrossBroker• RAS• BDII• VOMS• LFC• MyProxy• APEL accounting
• GridICE• R-GMA
Development Core Services• CrossBroker• RAS• BDII• VOMS• LFC• MyProxy• Pure gLite WMS• Autobuild• Repository
• R-GMA for development
• Helpdesk
• SAM• Network monitoring
• Security coordination
INGRID’08, Italy, April 2008 9
Int.EU.Grid Virtual Organizations
Applicationsifusionienvmodiusctibrainihepiplanckiwien2kicompchemimrteuforiaihidraicesgaimain, imon, itut, itest
INGRID’08, Italy, April 2008 10
int.eu.grid ArchLocal S
erv
ices
Core
Serv
ices
Public ips
Public ips
I2G
CB
To
p-B
DII
I2G
RA
S
R-G
MA
Ser
ver
LF
C
VO
MS
Ser
ver
MyP
roxy
I2G
UI
LC
G-C
EI2
G C
E s
oft
wa
re
Bat
ch S
erve
r I2G WN software
gLite WNI2G WN software
gLite WNI2G WN software
gLite WN
Mo
nB
ox
Sit
e-B
DII
EGEE Node
EGEE Nodes with I2G software
I2G Node
Legend:
SE
Public/Private ips
int.eu.grid is a gLite based infrastructure but...enhancing several services (lcg-CE, WN) and deploying new components (CB, RAS, UI) towards interactivity and MPI
INGRID’08, Italy, April 2008 11
Migrating Desktop and RAS (I)
Migrating Desktop (MD): User Friendly Grid Access
Java based GUI; Hides the details of the grid Allows to log-in in the GRID independently from
where you are (laptop, desktop, everywhere ...) what kind of Computer/OS you are using…
Roaming Access Server (RAS): Gateway for Grid AccessPerforms actions on the grid on behalf of the MD
UI RAS MD GUI to access Grid Services
Data Management
Interactivity and Visualization
Submission of Parallel Jobs
Submission of Interactive Jobs
INGRID’08, Italy, April 2008 12
Migrating Desktop and RAS (II)
Work together in a client/server fashionThe RAS is a core service…
… installed at a central location with direct network connectivityMD can run from private workstations…
… as long as it connects to the appropriate RAS ports
The RAS offers a well defined set of web services Represents the integration level of interfaces for different middleware
Java 1.6 supportJob submission, job monitoring, data management operations, job channel forwarding, …
MD/RAS supports interactivity and real time visualisation
A plugin has to be developed for each application Acts as an interface enabling bidirectional communication between a job and the local GUI.
INGRID’08, Italy, April 2008 13
(i2)glogin ::== grid interactive tool
Interactivity is wrapped around (i2)gloginCrossGrid tool extended in int.eu.grid to execute with GT4Supports GSS-based encryptionEnables online communication providing shell functionality for access to the Grid nodes
Sort of (grid) ssh using certificates
MD/RAS integration with i2gloginA local instance of i2glogin is started in the RAS
Acting as the serverThe client part of i2glogin is submitted to the grid through a JDL
The connection point (server:port) is specified as an argumentWhen the grid job connects, i2glogin connects back to the local instance
Creates a secure, low latency, bidirectional connection.
INGRID’08, Italy, April 2008 14
I/O streaming
$ i2g-job-submit interactive.jdl
$ i2glogin-p 24599:158.109.65.149
VirtualOrganisation = "imain";JobType = “Normal";Interactive = TRUE;InteractiveAgent = “i2glogin“;InteractiveAgentArguments = “-r –p 24599:158.109.65.149 -c“;Executable = “/bin/sh";InputSandbox = {“i2glogin"};
INGRID’08, Italy, April 2008 15
I/O streaming
CrossBroker
WN
User applicationi2glogin
$ i2glogin-p 24599:158.109.65.149
Job
INGRID’08, Italy, April 2008 16
WN
i2glogin
I/O streaming
CrossBroker
User application
$ i2glogin-p 24599:158.109.65.149
INGRID’08, Italy, April 2008 17
WN
i2glogin
I/O streaming
CrossBroker
User application
$ i2glogin-p 24599:158.109.65.149sh-2.05b$ hostnameaow5grid.uab.essh-2.05b$ exitexitConnection closed by foreign host$
INGRID’08, Italy, April 2008 18
GVID ::== Grid Video streaming
Visualisation capabilities are based on the compression of the OpenGL graphics generated by the application
GVID performs the encoding/decoding on both sidesVideo encoding saves bandwidth
Communication over glogin
A GVID display client java implementation was develloped to follow requirements of MD/RAS application plugins
A generic java package is ready to be used by all grid devellopers trying to built a MD plugin
User inputs (such as mouse clicks) generated through the application specific plugin are sent via RAS to the applicationThe application has to be adapted to react to these input events
INGRID’08, Italy, April 2008 20
Integration of the Interactivity & Visualization tools
Job Submission Services
CrossBroker
Logging&
Bookkeeping
Roaming Access Server
LRMS
Gatekeeper
JDL
,
WorkerNode
gLogin
vtk App
MP4 Encoder
Event Decoder
TCPTransport
SocketTransport
FileTransport
PipeTransport
remoteG
lut
Job Submission Services
CrossBroker
Logging&
Bookkeeping
LRMS
Gatekeeper
JDLJDL
,,
WorkerNode
gLogin
WorkerNode
vtk App
MP4 Encoder
Event Decoder
TCPTransport
SocketTransport
FileTransport
PipeTransport
remoteG
lut
MP4 Encoder
Event Decoder
TCPTransport
SocketTransport
FileTransport
PipeTransport
remoteG
lut
ApplicationGVid
Migrating
Desktop
Java V
ideo
Pla
yer
MP4
Decoder
Event
Encoder
TCP
Transport
Socket
Transport
File
Transport
Pipe
Transport
Migrating
Desktop
Simulation +visualisation
Java V
ideo
Pla
yer
MP4
Decoder
Event
Encoder
TCP
Transport
Socket
Transport
File
Transport
Pipe
Transport
Java V
ideo
Pla
yer
MP4
Decoder
Event
Encoder
TCP
Transport
Socket
Transport
File
Transport
Pipe
Transport
Java V
ideo
Pla
yer
MP4
Decoder
Event
Encoder
TCP
Transport
Socket
Transport
File
Transport
Pipe
Transport
Java V
ideo
Pla
yer
MP4
Decoder
Event
Encoder
TCP
Transport
Socket
Transport
File
Transport
Pipe
Transport
INGRID’08, Italy, April 2008 21
CrossBroker (I)
CrossBroker: Int.EU.Grid meta-schedulerOffers the same functionalities as the EGEE Resource Broker, plus:
Support for Interactive Applications Interactive agent injectionScheduling priorities; Time Sharing
Full support for Parallel ApplicationsPACX-MPI and OpenMPI
Flexible MPI job startup based on MPI-START
PACX-MPI and OpenMPI support
MPI job startup based on MPI-START
Support for interactivity via GVid/Glogin
RB CrossBroker
INGRID’08, Italy, April 2008 22
CrossBroker (II)
The user can decide which interactive agent to use through special JDL requirements
The CrossBroker can inject it transparently to the user
If the job is recognized as interactive...The CrossBroker treats it with higher priority
There is in place a mechanism to use bandwidth measurements in the matchmaking process
Great for application needing visualisationBut not really implemented...
If there are no available resourcesUse a time sharing mechanism
INGRID’08, Italy, April 2008 23
Time Sharing: Glide-in mechanism
Main idea:Wrap every batch job with an agent (glide-in)
Agent will get control of the remote machine independently of its local resource manager.
Glide-in benefits on the interactivity framework Agents enable simple multiprogramming between interactive and batch jobs.
Interactive jobs may run even when no free resources are available.
Agents can also be used as a fast start-up mechanism.Agent can control the amount of CPU that an interactive job gets according to QoS requirements expressed by the user in the JDL.
INGRID’08, Italy, April 2008 31
Response Time
MechanismResourceSearching
ResourceSelection
Submission
Campus Grid Remote Site
Free machine submission
3s 0.5s 17.2s 22.3s
Glidein submission to free machine
3s 0.5s 29.3s 33.25s
Virtual Machine submission 0.5s 6.79s 8.12s
CrossBroker CE + WN
INGRID’08, Italy, April 2008 32
Local configurations
Address the possibility of starting up the application immediately
Local Resource Management System levelSome sites have configured their queues so that
(Interactive) jobs do not remain in queueOr there is immediate resources to execute them or they are resubmitted elsewhere
LCG-CE JobManager (JM) levelSome site have decided to move from the “lcgpbs” JM to the “pbs” one
In EGEE, a direct submission to a site completes in ~25s if the sites uses “pbs” JM against > 2m for the “lcgpbs” JM“pbs” JM requires sharing homes between CE and WN (via NFS)
However, lcgpbs have been coded for scalability instead speadingLess CPU consumption when the CE is handling hundred of jobs in parallel
INGRID’08, Italy, April 2008 33
EGEE short deadtime jobs (sdj) WG
sdj definition:short execution time; unexpected and urgent
cannot be dealt on a best effort basis in a full production regime.
Use case & RequirementsVisualisation, Inspection, InteractionImmediate access and small latenciesDinamic attach a sheel to a running process
Debugging process
Bypassing middleware delays“An alternative solution is “agent scheduling” or “overlay” systems which provide user task management”
int.eu.grid relies on gLite with additional enhancements
Opportunity
window to
test interoperabilit
y with
EGEE
INGRID’08, Italy, April 2008 35
gLite WN
Scheme: Enhancing an EGEE site with Int.EU.Grid features
I2G CrossBroker
LFC REGISTRY
Top-BDII lcg-RB Top-BDII
LFC REGISTRY
Int.EU.Grid Infrastructure EGEE Infrastructure
Core
Serv
ices
Batch Server
LC
G-C
E
gLite WN
I2G WN software
gLite WNI2G WN software
Mo
nB
ox
Site-B
DII
SE
UI
Local S
erv
ices
I2G
UI
LC
G-C
EI2
G C
E s
oft
wa
re
Mo
nB
ox
Sit
e-B
DII
Batch Server
I2G WN software
gLite WN
I2G WN software
gLite WN
I2G WN software
gLite WN
SE
MPI,
Visualization
Migrating
Desktop
I2G U
I softw
are
I2G C
E so
ftwa
re
I2G WN software
UI
gLite WN
gLite WN
gLite WN
LC
G-C
E
MPI,
Visualization
INGRID’08, Italy, April 2008 36
Open Issues and Drawbacks
Information System is still a major problemDelay reporting the site change of availability to Core Services
Still missing a generalized priority schema for grid users and jobs
Things are more easy if infrastructure is simple, but…institutions will share the same local infrastructure between several Grids
Some solutions (under investigation): Information system: CrossViewFair share with different penalty factors
Batch jobs worsen the priority according to the resources used Interactive jobs worsen the priority faster than batch ones
Interactive CEAutomatic injection of glidein wrappers for all jobs submitted from other sources different of CrossBroker
INGRID’08, Italy, April 2008 37
Int.EU.Grid added value
int.eu.grid offersInteractivity and Visualization
“On the Fly” interaction, “On the Fly” response; Graphical VO applications
Inter and intra cluster parallel tasksPACXMPI & OpenMPI
User friendly access to resourcesThe Migrating Desktop
int.eu.grid features go in favour of fulfilling most of the requirements of users from other major grids…
VOs can take advantage of the interoperability solutions developed within int.eu.grid
Add/configure VO resources without losing their normal (gLite) capabilities.