effects of locality, content and java runtime on video performance vikram chhabra, akshay kothare,...
TRANSCRIPT
EFFECTS OF LOCALITY, EFFECTS OF LOCALITY, CONTENT AND JAVA RUNTIMECONTENT AND JAVA RUNTIME
ON VIDEO PERFORMANCEON VIDEO PERFORMANCE
Vikram Chhabra, Akshay Kothare, Vikram Chhabra, Akshay Kothare,
Mark ClaypoolMark ClaypoolComputer Science DepartmentComputer Science Department
Worcester Polytechnic InstituteWorcester Polytechnic Institute
Worcester, Massachusetts, USAWorcester, Massachusetts, USA
Introduction
• Increased bandwidth has enabled video streaming to the desktop.
• Java’s “Write once, run anywhere” - preferred choice for multimedia applications.
Java Performance
• Java lags the speed of C / C++.
• Need to explore factors influencing the performance of Java.
Performance of Multimedia
• Frame Rate : Numbers of frames displayed per second.
• Jitter : Variance in time taken for a frame to travel from server to client.
Previous Work
• Most performance evaluations have been for traditional media.
• Our previous work suggests:
– Local access of media
– Processing power of the native hardware
mostly influence the performance of Java.
Our Approach
• Setup a controlled environment
• Serve movie to Java client
• Observe frame arrival time
• Calculate frame rate & jitter
• Derive conclusions
Parameter One : Network Distance
Four Setups:
1. Local Playback
2. Dedicated Client/Server
3. Normal Setup
4. Different SwitchFixed Parameters :
Operating System : Linux 6.3 kernel version 2.2.13.
Server : Pentium MMX 233 MHz PC with 64MB of RAM.
Client : Pentium II 300 MHz PC with 128MB of RAM.
Network : Ethernet broadband coaxial cable at 10Mbps.
Movie : A space scene, encoded as 120 “ I ” frames
Parameter Two : Movie Content• Ten “ perceptually different ” movies
– fixed resolution of 200 x 200 pixels
– 120 frames each, 4 seconds each
– “I” and “IBBPBBPBBPBB” group of pictures format.
• I Frame : Fully Encoded
• B or P Frames : Relatively Encoded
• Fixed Parameters :Client : WinNT 4.0 service pack 6
(Pentium MMX 233 MHz, 64MB RAM)
Server : SuSE Linux 6.4 Kernel version 2.2.14
(Intel PIII 500Mhz PC, 128 MB RAM)
Network : 100 Mbps Ethernet
Parameter Three : JIT Compilation
• JIT “on” vs. “off”
• “Java” vs. “C”
Fixed Parameters :
Operating System : Linux 6.3 kernel version 2.2.13.
Client : Pentium II 300 MHz PC with 128MB of RAM.
Movie : A space scene, encoded as 120 “ I ” frames
Network Distance – Frame Rate
0.00
0.200.40
0.600.80
1.001.20
1.401.60
1.802.00
Local Dedicated Normal Switch
Distance between Client and Server
Fram
e R
ate
(fps)
.
“ Local media access faster than different network setups ”
Network Distance – Jitter
0.00
10.00
20.00
30.00
40.00
50.00
60.00
70.00
80.00
Local Dedicated Normal Switch
Distance between Client and Server
Jitt
er (
mea
sure
d as
the
sta
ndar
d
dev
iatio
n in
del
ay)
“ Local media access shows lesser jitter than network access ”
Movie Content – Frame Rate
0.00
1.00
2.00
3.00
4.00
5.00
6.00F
ram
es p
er s
eco
nd I Frames
IBB(PBB)*4
“ Movie content affects the frame rate ”
Movie Content – Jitter
020406080
100120140160
Jitt
er (
Mea
sure
d as
the
Sta
nda
rd
Dev
iati
on in
del
ay)
I Frames IBB(PBB)*4
“ Movie content affects jitter ”
JIT Compilation – Frame Rate
0
5
10
15
20
25
No JIT JIT C
Fra
mes
per
sec
ond
“ JIT enhances performance, Java still lags power of C ”
JIT Compilation – Jitter
0
10
20
30
40
50
60
70
80
No JIT JITJitt
er (
mea
sure
d as
the
Sta
ndar
d D
evia
tion
in d
elay
)
“ JIT reduces jitter ”
Conclusions
• Local media access faster than network– 5% higher frame rate, 25% lesser jitter
• Not much difference over different networks
• Movie content has significant implications– Blue movie 3 times faster and shows 40%
lesser jitter than Mixbag
Conclusions (contd.)
• JIT gives performance boost – 100 % increase in frame rate – 25% decrease in jitter
• Java still lags C– Java (JIT on) frame rate 10 times less than C