27
OpenOffice.org Performance Analysis to improve responsiveness for older PC Copyright © 2010 Open Source Development Co., Ltd. Samphan Raruenrom Samphan Raruenrom [email protected] [email protected] Open Source Development Co., Ltd Open Source Development Co., Ltd . . www.osdev.co.th www.osdev.co.th

OpenOffice.org Performance Analysis - to improve responsiveness for older PC

  • Upload
    osdev

  • View
    111

  • Download
    0

Embed Size (px)

DESCRIPTION

A client with 1x,000 users has gradually migrated to OpenOffice.org for a few years. They found many complaints about the speed of OpenOffice.org compare to MS Office. This kind of complaint are familiar to us but the magnitude of the problems, e.g. open-file time in minutes seems rather strange. So we investigated the problems to find the kind and cause of them to reach a conclusion that could be use to improve the situation in our client case. We found that the problem depends solely on hardware, notably RAM, vs. file size. Our client happen to have old IT infrastructure with a lot of old PC, e.g. Pentium with 256M RAM. Add enough RAM (>512M) and OpenOffice.org will run fine for files of average sizes. Add more (e.g. >1024M) to open larger files. Here is the presentation of our finding.

Citation preview

Page 1: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

OpenOffice.org Performance Analysisto improve responsiveness for older PC

Copyright © 2010 Open Source Development Co., Ltd.

Samphan RaruenromSamphan [email protected]@osdev.co.th

Open Source Development Co., LtdOpen Source Development Co., Ltd..www.osdev.co.thwww.osdev.co.th

Page 2: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 2

Issue #1● How bad is OpenOffice.org speed problem?● And where?

Page 3: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 3

Common PC Configurations● Hardware

● Desktop PC● Intel Pentium 4, 2292 MHZ● RAM 256 MB● Video 1024x768 pixels, 32 bits● Harddisk 40-80 GB

● Software● Windows XP Professional● OpenOffice.org 3.1

Page 4: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 4

Sample Configurations● PC0 : fresh-install, standalone● PCA : PC0 + join domain

● run standard corporate software/services● PCA Old : 1-2 years old PCA

● typical PC in a corporate● PCA Old d1, d2, d3

● PCA Old defragmented 1, 2, 3 times● PCA Old d3f

● PCA Old d3 with fresh-install OpenOffice.org

Page 5: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 5

Metrics● Cold startup time

● time to start OpenOffice.org for the first time after reboot

● Warm startup time● time to start another instance of OpenOffice.org

after cold startup● Open small file

● time to open a small sheet - 378KB● Open big file

● time to open a big, complex sheet - 5,397KB

Page 6: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 6

PC0 PCA PCA Old PCA Old d1 PCA Old d2 PCA Old d3 PCA Old d3f00:00

01:00

02:00

03:00

04:00

05:00

06:00

07:00

08:00

09:00

10:00

04:48

06:48

08:3108:50 08:42 08:37

08:01

00:21 00:32

01:08 01:01 01:01 01:03 00:55

cold startupwarm startupopen big fileopen small file

Configurations

Time (min:sec)

Speed Benchmark #1

Page 7: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 7

PC0 PCA PCA Old PCA Old d1 PCA Old d2 PCA Old d3 PCA Old d3f00

10

20

05

10

16

09

07

050405

12

07 0807 07

06

cold startup warm startup

Configurations

Time (sec)

Compare Cold/Warm Startup

Page 8: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 8

Conclusion #1● Startup time is not an issue

● Startup time < 20 sec.● Warm startup time < 10 sec.● Worst case : Cold startup in old PC

– can be improved to be on par with fresh-install PC by running a few or regular defrag

● Open-file time is the real issue● Defrag doesn't improve open-file time!

Page 9: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 9

Issue #2● Why OpenOffice.org open-file time is very slow

for big files?● Why this is never an issue for MS Office?

Page 10: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 10

Open-file Benchmarking● Configurations

● OpenOffice.org on PC0● OpenOffice.org on PCA● Microsoft Office 2000 on PC0● Microsoft Office 2000 on PCA● StarOffice 9 on PC0

Page 11: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 11

Test Data● 5 Calc files with 256 columns x n rows● n = 200, 400, 600, 800, 1000● file size = 878K, 1725K, 2625K, 3499K, 4373K● each cell is a simple formula● on all charts, x axis are the workloads on the

system● no run : after reboot, no running application● office : after running an instance of office, no file● load n rows : after open the test file with n rows

Page 12: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 12

Memory Metrics● System Information

● Physical Memory– Total RAM– Unused RAM = Available+Cache

● Virtual Memory– Limit = Total Virtual Memory– Current = Allocated Virtual Memory, used by all processes

● Process Information– Private Bytes = Size of virtual memory used by a process– WS Private = RAM usable by the process

Page 13: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 13

Speed Metrics● Open-file time

● Total– total time to open a file

● OpenOffice.org Calc specifics– Loading - time to load the file– Calculating - time to calculate the value of cells– Adapting Row & Height - time to adjust the cell layout– Total = Loading + Calculating + Adapting RH

Page 14: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 14

Key Metrics● Process's Private Memory in Bytes

● virtual memory that the process need privately● i.e. “process size” or its virtual memory requirement

● Process's Private Working Set● amount of RAM that the system allocated to the

process● depend on how much RAM is available

Page 15: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 15

Memory v.s. Speed Implications● when Private Working Set = Private Bytes

● the entire process will be in RAM → fast● when Private Working Set < Private Bytes

● only the part of process in 'Private WS' will be in RAM● the rest will be in paging file → slow

● the critical point● the closer Private Bytes is to Total RAM, the lesser is

the chance for the system to provide the process with enough Working Set

Page 16: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 16

PC0 - OpenOffice.org

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

200,000

400,000

600,000

800,000

1,000,000

16,689

87,695144,873

182,983

260,641322,415

TotalUnusedCurrentLimitWS PrivatePrivate Bytes

Work Load

Memory (KB)

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

50

100

150

200

250

14.3327.67

46.33

110.33

198.33

LoadingCalclatingAdapting RHTotal

Work load

Time (sec)

Page 17: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 17

PCA - OpenOffice.org

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

200,000

400,000

600,000

800,000

1,000,000

16,19982,476

144,145205,980 228,872

329,935

TotalUnusedCurrentLimitWS PrivatePrivate Bytes

Work load

Memory (KB)

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

50

100

150

200

250

1528.67

56.33

136

245

LoadingCalclatingAdapting RHTotal

Work load

Time (sec)

Page 18: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 18

PC0 - MS Office

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

200,000

400,000

600,000

800,000

1,000,000

3,780 10,676 16,956 23,232 29,527 35,835

TotalUnusedCurrentLimitWS PrivatePrivate Bytes

Work load

Memory (KB)

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s...

1

1

2

2

3

1 1

2 2 2

Total

Work load

Time (sec)

Page 19: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 19

PCA - MS Office

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

200,000

400,000

600,000

800,000

1,000,000

4,011 10,924 17,208 23,505 29,721 36,133

TotalUnusedCurrentLimitWS PrivatePrivate Bytes

Work load

Memory (KB)

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

0.5

1

1.5

2

2.5

3

3.5

2 2 2

2.67

3.33

Total

Work load

Time (sec)

Page 20: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 20

PC0 - StarOffice

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s0

200,000

400,000

600,000

800,000

1,000,000

16,85185,368

149,395209,660

270,477329,001

TotalUnusedCurrentLimitWS PrivatePrivate Bytes

Work Load

Memory (KB)

not run off ice load 200 row s load 400 row s load 600 row s load 800 row s load 1000 row s...

50

100

150

200

250

1528

57

128

234

LoadingCalclatingAdapting RHTotal

Work load

Time (sec)

Page 21: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 21

Compare Virtual Memory Usage

0 Rows 200 Rows 400 Rows 600 Rows 800 Rows 1000 Rows0 KB

50,000 KB

100,000 KB

150,000 KB

200,000 KB

250,000 KB

300,000 KB

350,000 KB

15,800 KB

83,320 KB

148,936 KB

212,640 KB

270,112 KB

326,252 KB

2,898 KB 9,448 KB 2,584 KB

22,604 KB 29,048 KB 35,448 KB

CalcExcel 2003Excel 2007

Workload

Private Bytes

Page 22: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 22

Conclusion #2● OpenOffice.org open big files very slow

● because it require much more memory to load files compare to MS Office loading the same file

● On PC with 256M RAM the situation is worse● because its RAM is not enough to hold the

document in RAM so paging file will be used● just adding 256M RAM will allow much bigger

documents (e.g. the 1000 rows test) to be kept in RAM to avoid paging

Page 23: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 23

Conclusion #3● for PC with 256MB RAM

● RAM is the cause of the slow open-file speed– PCA which run a lot of standard corporate software leave

even less RAM for OpenOffice.org, worsen the situation– adding more RAM will improve open-file speed a lot– faster CPU or harddisk will not help

● PC with 512MB will have the same problem but at larger file size● however, if the PC run a lot of software leaving less

RAM for OpenOffice.org, the same situation as 256MB PC will happen

Page 24: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 24

Issue #3● How much adding more RAM improve open-file

speed?● How much faster CPU and harddisk improve

open-file speed?

Page 25: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 25

Configurations● PC0256, PCA256, PCA512, PCA1024

● Intel Pentium 4, 2292 MHZ● RAM 256, 512, 1024 MB accordingly● Harddisk IDE

● PCB1024● Core 2 Duo 3 GHz● RAM 1024 MB● Harddisk SATA II

Page 26: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 26

Speed Benchmark #2

PC0256 PCA256 PCA512 PCA1024 PCB10240

60

120

180

240

300

360

420

2132

12 12 7

288

408

223213

67

open small fileopen big file

Configurations

Tim

e (s

ec)

Page 27: OpenOffice.org Performance Analysis - to improve responsiveness for older PC

© 2010 Open Source Development Co., Ltd. 27

Recommendation● defrag PC harddisks to improve OpenOffice.org

startup speed● for 256 MB PC

● small or simple files are as OK as in larger PC● to open larger files, open just one document

and close all other software– this leave all available RAM for OpenOffice.org to load

the document, more chance for all to stay in RAM● to improve startup speed in low memory situation,

enable OpenOffice.org QuickStarter to keep the OpenOffice.org process in RAM or at least in virtual memory