Osaka University, Japan
SC22 BOOTH 1613

AI assisted job scheduler / Profile guided vector optimization
AI assisted job scheduler: Cloud Burst Optimization with Deep Q Network
BackgroundResults・Cloud bursting becomes attractive for HPC systems to prevent anincrease of job waiting time under high load.
・However, it is still difficult to control the tradeoff between job waitingtime and cloud cost.

・Proposed architecture can control tradeoff between waiting time andcloud costs
Waiting time

Proposal

0.35

3.0Architecture
・Job scheduler provides state of job queue and on-premise and cloud
resources to DQN when scheduling a job
・DQN returns action that shows the scheduler should assign
on-premise or cloud resources to the job or skip scheduling・Job scheduler schedules the job based on the action
・Job scheduler provides reward to DQN for evaluating the action
based on a waiting time and a cloud cost
Job queue

Job scheduler

Backlog part

Observation part

DQN AgentState Reward( m w, m c ) = (0 . 5 , 0 . 5 )( m w, m c ) = (0 . 4 , 0 . 6 )( m w, m c ) = (0 . 3 , 0 . 7 )( m w, m c ) = (0 . 2 , 0 . 8 )

0.30

2.5

0.25

2.0costwaiting time・Job scheduler with DQN (Deep Q Network) that can optimize thetradeoff of cloud bursting

1.5

0.15

1.0

0.10

0.5
0.0

0.20

0.05
0.00

dqn

dqn

Future Work・Evaluation and implementation of the proposed method into the
SLURM scheduler
DQN Agent

SLURM

Input (State):
・Job queue
・On-premise resource
・Cloud resource

state

SchedulingthreadOn-premise resource

inference

action
Nodes

Node SelectPlugin withDQN I/F

Available
Cloud resourceCost
0.40

3.5

Time

AllocatedAction

rewardOutput:Q-values of actions

Modelupdate
Training(async)

Profile guided vector optimization for SX-Aurora TSUBASAResults

・Realization of vector optimization by users without HW knowledge
Proposal・Automatic source-to-source translation tool by Profile Guided Vector
Optimization (PGVO) for SX-Aurora TSUBASA
Architecture
・PGVO uses source codes, compiler analysis results and execution
profile data as inputs
・PGVO outputs translated source codes
Source code
do i = 1..100a[ i]=a[ i]+1Compiler analysis result

Exec. profile data

Loop unvectorized
Dependency unknow

Vector op ratio
Ave. vector length

・Significant performance improvement by PGVO compared toautomatic vectorization compiler with 3/8 workloads* of NPB(* Human-optimized codes that assumes tool behavior are evaluated)

Normalized Performance (VE=1)

Background・NPB 3.4.2 (omp version)
・VE: SX-Aurora 20B
1VE(8core) + ncc/nfort□ EP/SP/BT: PGO achieves great improvement□ CG/MG: Compiler already achieves good performance. No room for PGVO.

□ FT/IS/LU: Some room for optimization, but current PGVO achieves little or no improvement.

Future Work

optimized source code

Profile guided vector
optimizer

Inline expansion
Loop collapse
Outer-loop vectorization…

・Implement as a tool and confirm the feasibility
・Evaluate with more workloads
・Support more vectorization technologies

These works were carried out in Joint Research Laboratory for Integrated Infrastructure of High Performance Computing and Data Analysis
https://www.nri.cmc.osaka-u.ac.jp/

Contact : sc22@ais.cmc.osaka-u.ac.jp

https://www.cmc.osaka-u.ac.jp/