Topics _201_compress


Static  source features
=======================

  Compute-intensive application: 

     Modified Lempel-Ziv method (LZW).  Basically finds common
     substrings and replaces them with a variable size code.  This is
     deterministic, and can be done on the fly.  Thus, the
     decompression procedure needs no input table, but tracks the way
     the table was built.
 
  Source:             yes
  # of Lines:         869 (184+685) + 648 lines data array
  # of classes:       10 (1+9)
  # of methods:       
     public:          39 (8+31)
  method length:      many small methods (1-5 lines) 
                      some as large as 65 lines
  depth of subclassing:    2
  No native  
  JITable
  Single thread
  No graphics
 

Profile
=======

  Total bytecodes: 97508033

opcode                            count      percent 
 
aconst_null                        28      0.000029
iconst_m1                      2089366      2.142763
iconst_0                       463415      0.475258
iconst_1                       2585648      2.651728
iconst_2                         1200      0.001231
iconst_3                       347006      0.355874
iconst_4                          343      0.000352
iconst_5                          178      0.000183
lconst_0                           44      0.000045
dconst_0                            3      0.000003
bipush                         1750666      1.795407
sipush                         574744      0.589432
ldc                                55      0.000056
ldc2_w                            348      0.000357
iload                          2721619      2.791174
dload                              11      0.000011
aload                             822      0.000843
iload_0                          4440      0.004553
iload_1                        6938161      7.115477
iload_2                        4415180      4.528017
iload_3                        1925321      1.974525
fload_2                             3      0.000003
dload_2                        115117      0.118059
aload_0                        16361488      16.779631
aload_1                        167957      0.172249
aload_2                          1551      0.001591
aload_3                         10678      0.010951
iaload                         431139      0.442157
daload                         147629      0.151402
aaload                         196812      0.201842
baload                         1904339      1.953007
caload                           5176      0.005308
saload                         284380      0.291648
istore                         1045116      1.071826
dstore                             11      0.000011
astore                            521      0.000534
istore_0                          612      0.000628
istore_1                       794591      0.814898
istore_2                       1206939      1.237784
istore_3                       836651      0.858033
astore_0                            1      0.000001
astore_1                           10      0.000010
astore_2                          456      0.000468
astore_3                          368      0.000377
iastore                        1852347      1.899687
lastore                           390      0.000400
dastore                         32640      0.033474
aastore                           149      0.000153
bastore                        1193928      1.224441
castore                          1119      0.001148
sastore                        228276      0.234110
pop                               612      0.000628
dup                            3082779      3.161564
dup_x1                         1195107      1.225650
dup2                            16416      0.016836
iadd                           2535944      2.600754
dadd                            16265      0.016681
isub                           1520753      1.559618
imul                            10352      0.010617
fmul                                1      0.000001
dmul                                9      0.000009
idiv                              501      0.000514
ddiv                            26383      0.027057
irem                              472      0.000484
ineg                             1380      0.001415
ishl                           1186438      1.216759
ishr                           562542      0.576919
iushr                          284380      0.291648
iand                           835471      0.856823
ior                            270652      0.277569
ixor                           253225      0.259697
iinc                           2825764      2.897981
i2f                                 1      0.000001
i2d                             42776      0.043869
f2i                                 1      0.000001
f2d                                 1      0.000001
d2i                                 2      0.000002
int2byte                       479108      0.491352
int2char                          613      0.000629
int2short                      221876      0.227546
dcmpl                           45124      0.046277
dcmpg                           69994      0.071783
ifeq                           623462      0.639396
ifne                           175217      0.179695
iflt                           230906      0.236807
ifge                            88132      0.090384
ifgt                           161762      0.165896
ifle                           423391      0.434211
if_icmpeq                          25      0.000026
if_icmpne                      755070      0.774367
if_icmplt                      2384451      2.445389
if_icmpge                      587295      0.602304
if_icmpgt                      221935      0.227607
if_icmple                      127649      0.130911
goto                           348773      0.357686
ireturn                        1836040      1.882963
dreturn                          9999      0.010255
areturn                          1570      0.001610
return                         1234914      1.266474
getstatic                          34      0.000035
putstatic                          34      0.000035
getfield                          259      0.000266
putfield                          146      0.000150
invokevirtual                     114      0.000117
invokenonvirtual                   91      0.000093
invokestatic                       18      0.000018
invokeinterface                    16      0.000016
new                                35      0.000036
newarray                          844      0.000866
anewarray                           4      0.000004
arraylength                      5640      0.005784
checkcast                           1      0.000001
monitorenter                      286      0.000293
monitorexit                       286      0.000293
multianewarray                      1      0.000001
ifnull                              8      0.000008
ifnonnull                         509      0.000522
ldc_quick                       20357      0.020877
ldc2_w_quick                    10354      0.010619
getstatic_quick                476869      0.489056
putstatic_quick                    37      0.000038
invokenonvirtual_quick         245324      0.251594
invokestatic_quick               1405      0.001441
invokeinterface_quick              16      0.000016
new_quick                         877      0.000899
anewarray_quick                     5      0.000005
multianewarray_quick                1      0.000001
checkcast_quick                     1      0.000001
invokevirtual_quick_w          2836412      2.908901
getfield_quick_w               15931243      16.338390
putfield_quick_w               2642281      2.709809



Send comments to the SPEC Java committee mailing list.