Performance/Meetings/2007 11

From Apache OpenOffice Wiki
Jump to: navigation, search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Performance 170.png
Performance Project

performance.openoffice.org

Quick Navigation

Team

Communication

Activities

About this template


Performance/Meetings/2007/11/29

Meeting Minutes
IRC Meeting of Sun Microsystems (StarOffice) with RedFlag2000
Performance Project


Date: 2007/11/29
Time: 16:13– 18:05
Meeting No.:


Agenda:

(16:13:33) LiHeng: good afternoon
(16:13:36) xiuzh1: hello,afternoon
(16:14:24) LiHeng: we prepare a agenda
(16:14:55) LiHeng: Sun team introduce what they did for performance before.What tools we needHow to start profile and how to share the profile results
(16:14:56) xiuzh1: prepare or prepared?
(16:15:27) LiHeng: you must select some item:)
(16:15:44) LiHeng: Sun team introduce what they did for performance before
(16:15:45) LiHeng: What tools we need
(16:15:53) LiHeng: How to start profile and how to share the profile results
(16:16:16) LiHeng: How to we analysis the problem from the enduser
(16:16:24) LiHeng: that's all
(16:17:16) xiuzh1: good, It would be better if you email this agenda to the guys from sun now,they can prepare something for it
(16:17:49) LiHeng: please help us to select items
(16:18:03) xiuzh1: ok,
(16:20:33) LiHeng: (+o xiuzh1)
(16:20:36) LiHeng: ?
(16:20:39) xiuzh1: have done
(16:20:59) LiHeng: how to change your mode?
(16:21:24) xiuzh1: input:"/op xiuzh1"
(16:21:33) kuangliang: ??
(16:21:46) xiuzh1: LiHeng:thanks
(16:21:58) LiHeng: xiuzh1:you are welcome
(16:22:01) LiHeng: :)
(16:24:17) LiHeng: xiuzhi : we will recommend the 4 items to the meeting agenda today , right?
(16:25:12) xiuzh1: LiHeng: I have sent your agenda to them,
(16:25:38) LiHeng: xiuzh1:thank you !
(16:26:01) xiuzh1: LiHeng:If they have more topics, they will have a proposal
(16:27:40) YuGuoqiang: Malte: Good morning!
(16:27:51) xiuzh1: LiHeng: I read the "please help us to select items" as "please help us to send items",so I sent them, :-P
(16:28:07) Malte_: Hi! :)
(16:28:30) LiHeng: Hi Malte !
(16:28:51) liangjun: Hi Malte ! Good morning !
(16:29:16) xiuzh1: Malte_:morning
(16:29:40) kuangliang: Malte morning!
(16:29:43) xiuzh1: Malte_: where is Matthias H.?
(16:30:05) Malte_: Don't know, let's wait...
(16:31:42) xiuzh1: Malte_: and mba?
(16:31:49) Malte_: I try to call them...
(16:32:09) LiHeng: Malte_:thank you!
(16:33:10) Malte_: MBA will be here soon, no idea about MHU...
(16:34:02) LiHeng: mba:morning!
(16:34:09) kuangliang: Hi mba
(16:34:17) LiHeng: mhu:morning!
(16:34:17) kuangliang: Hi Matthias Huetsch
(16:34:18) mba: Good afternoon. :-)
(16:34:28) mhu: Hi all, sorry for being late.
(16:34:35) Malte_: OK, I think we simply start without MHU then...
(16:34:38) YuGuoqiang: mba, mhu: Good morning!
(16:34:39) xiuzh1: LiHeng: your agenda, please
(16:34:59) LiHeng: xiuzh1:ok
(16:35:09) mhu: Malte_: but I'm already here :-)
(16:35:26) Malte_: Uuups ;)
(16:35:55) LiHeng: mhu:we prepared a agenda
(16:36:14) LiHeng: Agenda from our side:
(16:36:21) mhu: LiHeng: agenda is good, would you like to start?
(16:36:21) LiHeng: 1.Sun team introduce what they did for performance before
(16:36:30) LiHeng: 2.What tools we need
(16:36:38) LiHeng: 3.How to start profile and how to share the profile results
(16:36:43) LiHeng: 4.How to we analysis the problem from the enduser
(16:37:10) LiHeng: mhu:thanks, let's go! :)
(16:37:32) xiuzh1: mhu: Do you have other topics need to discuss?
(16:38:13) mhu: I think, the topics are fine. I would probably change the order, though.
(16:39:11) Malte_: OK, I tell about the past...
(16:39:13) mhu: what I mean, is that I would start with where the problem is (ask end user), then start profiling that problem.
(16:40:08) Malte_: When we started to work on OOo2, we didn't care for performance, and suddenly realized that start-up and load/save was really slow compared to OOo1.1
(16:40:31) Malte_: So we analyzed startup with help of profilers and our RTL_LOG feature
(16:40:55) Malte_: Both gave us some hints about expensive operations in startup and load/save
(16:41:19) xiuzh1: Malte_:good topic,
(16:41:24) Malte_: Some could be eliminated (start-up) by dothing stuff on demand only
(16:41:49) Malte_: Which means: Don't do/init things in startup when you don't need them immediately!
(16:42:05) Malte_: So some things are done on demand, or at least "lazy" now.
(16:42:28) Malte_: With lazy meaning, using some timer and do stuff when startup is done.
(16:42:48) Malte_: We also figured out many expensive stuff in out XML configuration, and fixed that
(16:43:06) Malte_: Load/Save is/was more difficult...
(16:43:06) LiHeng: Malte_: good idea
(16:43:28) Malte_: Our XML processing is not done in an optimal way becuase of how we use the existing office API.
(16:43:48) Malte_: That API is good for programming OOo, but for load/save we can imagine better API
(16:44:12) Malte_: We already have one in mind, but adapting this is a LOT of work....
(16:44:43) Malte_: But we where able to make improvements for load/save on other places, in the application cores
(16:44:50) mhu: Thanks Malte, but the introduction looks incomplete to me. I have been working on (cold) startup with Michael Meeks for OOo2.0, but others made it slower than we could make it faster :-(
(16:44:52) LiHeng: Malte_:XML API is good ,but we have to change some implementation
(16:45:14) Malte_: Right, that's the export optimizations :)
(16:45:22) Malte_: I meant MHU...
(16:45:32) Malte_: LiHeng: Sure.
(16:45:59) Malte_: But sometimes you can not simply change implementation, in this case you probably have to use a different API same time...
(16:46:14) Malte_: But before discussing this, let's clarify with what you want to start!
(16:46:25) Malte_: I doubt you want to start both areas in parallel...
(16:47:14) Malte_: IMHO you have to choose between startup or load/save now, what to do FIRST.
(16:48:01) mhu: I still have the idea to start with a concrete end-user problem, analyze that, and possibly fix it.
(16:48:34) Malte_: Sure - but do we really have other end user problems? LiHeng?
(16:49:13) LiHeng: CH2000 have some report about performance from end-user
(16:49:16) xiuzh1: OK,
(16:50:04) mhu: LiHeng: can we share your report with Malte_ and mba?
(16:51:02) LiHeng: mhu:Yes, i will send a email to them\
(16:51:51) LiHeng: mhu:maybe we can return to agenda :)
(16:52:07) mhu: LiHeng: thanks. can we also make a systematic analysis of that report? I mean, look what the common problems are?
(16:52:34) mhu: LiHeng: okay, let's return to agenda.
(16:53:26) LiHeng: mhu: change the order , first How to we analysis the problem from the enduser ,right?
(16:53:58) xiuzh1: LiHeng: You can paste them on http://pastebin.ca
(16:54:01) mhu: LiHeng: Maybe I can continue the things that Sun did, first?
(16:54:31) LiHeng: mhu:ok!
(16:54:45) mhu: LiHeng: thanks, so...
(16:55:46) mhu: What I did (with Michael Meeks of Novell) was to analyze the difference between cold and warm startup...
(16:56:49) mhu: cold startup means, for example first start after boot of machine, when all libraries need be read from disk (not in cache)...
(16:57:13) LiHeng: I see
(16:57:33) mhu: for cold startup mainly the number and size of shared libraries matters...
(16:58:27) mhu: to reduce size of shared libraries, we restricted number of exported function symbols and removed unused code (not much so far)...
(16:59:36) mhu: also, for unix, we introduced a 'pagein' program into the startup that 'pages in' the libraries (sequential disk read, instead of demand paging)...
(17:00:42) mhu: all in all, for cold start, I/O wait time is ~80% of the time, that is 5 times slower than warm start...
(17:01:42) mhu: also, number and size of libraries loaded: as Malte said, we tried to avoid to load everything at startup...
(17:02:13) xiuzh1: mhu: that also what we want to do
(17:02:37) LiHeng: mhu:the number 80% is also got by YuGuoqiang,too
(17:02:40) mhu: and, what needs to be loaded shall be small, for example we split off an 'cui.dll' (from svx) and 'swui.dll' from sw, and so on. That's is for now.
(17:03:30) kuangliang: MHU:Can we delete it?
(17:03:40) mhu: Can we delete what?
(17:03:41) YuGuoqiang: :)
(17:04:00) kuangliang: Split's dll?
(17:04:05) LiHeng: kuangliang: what do you want to delete?
(17:04:21) kuangliang: for example 'cui.dll'
(17:04:49) mhu: we can't delete it, we only avoid loading it right at startup.
(17:05:15) liangjun: MHU:can we load it when it is used?
(17:05:25) mhu: cui.dll contains Tools->Options dialog for example. Not needed during start, but still.
(17:05:42) mhu: liangjun: yes, that is the idea: load we needed.
(17:05:50) YuGuoqiang: liangjun:What you said is lazy loading.
(17:05:50) kuangliang: yes
(17:05:58) mhu: yes
(17:06:05) liangjun: yes
(17:06:54) liangjun: I think some soft used plugin? can we use it ?
(17:07:44) kuangliang: I think when OO startup some configuration files are accessed several times ,Can we control it?
(17:07:47) mhu: plugin? you mean for not yet used functionality? yes, but you first need to separate that functionality
(17:08:03) LiHeng: mhu:the important thing is removed unused code
(17:08:26) mhu: LiHeng: yes, that is a good idea.
(17:08:43) LiHeng: it's major cause in performance
(17:09:06) LiHeng: we can do it module by module
(17:09:07) mhu: We once started a small project to identify unused code. I don't know it's status.
(17:09:33) YuGuoqiang: I think lazy loading and reduce the binaries' size are both good ideas, and I want to know it's how good for optimization result.
(17:10:01) mhu: LiHeng: but you can ask Stefan Zimmermann for this code analysis project (and remove unused code). He was involved.
(17:11:22) LiHeng: mhu:OK! And can we make suggestion for other project to reduce some object
(17:11:35) mhu: I still have the idea that the real problem is not to improve startup by say 10% but by a factor of 10, and we should analyze the real problem first.
(17:12:25) mhu: LiHeng: yes, the reduction of size is always good.
(17:12:32) xiuzh1: mhu:I think so
(17:12:43) LiHeng: mhu:I think so
(17:12:55) mhu: Okay, thanks :-)
(17:13:17) LiHeng: ok, do next item?
(17:13:34) mhu: yes, i'm finished for now.
(17:13:56) LiHeng: second : What tools we need?
(17:14:35) kuangliang: Can we analyze OO by Sun Stdio?
(17:14:39) YuGuoqiang: LiHeng: How about mba? He/She did not talk about what he/she did before.
(17:15:14) mba: Our work was mainly related to supporting Matthias in his effort to get less code loaded on startup
(17:15:16) LiHeng: Matle_:you have already built some tools for monitor and profile, can you introduce them ?
(17:15:46) mba: So we coordinated and did the work that effectively removed several MB of code from that being loaded on startup.
(17:16:22) Malte_: I have tools for measuring, not for profiling.
(17:16:44) Malte_: This tool will measure startup and load/save of some tests docs.
(17:16:46) mhu: kuangliang: yes, partly SunStudio can help also. More on Solaris 10 or OpenSolaris (Solaris 11) with 'dtrace' support.
(17:17:02) Malte_: Optionally, it can do so for 2 versions of OOo, so you can compare them.
(17:17:18) Malte_: This is very helpful to check if your optimizations really helped here.
(17:17:33) LiHeng: Malte_: How can we get these tools?
(17:17:35) Malte_: Because - the profiler sometimes tricks you ;)
(17:17:56) Malte_: You think changing something makes a big differnce, but in reality, it doesn't :(
(17:18:08) kuangliang: MHU:Thanks !And do you do anything by this way?
(17:18:12) Malte_: This tool: I can send to you.
(17:18:31) mhu: Yes, sometimes a simple wall-clock is sufficient for measurements.
(17:18:36) Malte_: For some reason, only the Java binaries, no source right know, and not for making public on OOo right now.#
(17:18:38) LiHeng: Malte_:I know it , but we need the profiling to make deeply analyze
(17:19:04) Malte_: But you can configure it via config files, so you can change the measure points...
(17:19:18) Malte_: Getting profilers is up to you.
(17:19:24) Malte_: I used Intel VTune on Windows
(17:19:32) Malte_: It's around $600, I think.
(17:19:52) Malte_: You can download a trial version, with the resctriction that you can NOT save the results then
(17:20:05) Malte_: On Linux you can use Valgrind.
(17:20:11) Malte_: I didn't try it myself.
(17:20:19) Malte_: It's free, but probably harder to use.
(17:20:27) LiHeng: we will try to use Valgrind first
(17:20:29) mhu: kuangliang: sometimes I work on solaris with 'dtrace', more often manually observing things than using SunStudio. In my experience, much of this work is manual anyway (and thinking :-) ).
(17:20:44) Malte_: DTRACE is a very good choice!
(17:21:01) Malte_: But when I worked on performance, it was not available, came in late in the game
(17:21:14) kuangliang: MHU:ok
(17:21:38) Malte_: DTRACE might be hard to use, but should be very accurate, with powerful features
(17:21:56) mhu: Yes, dtrace was not yet finished when we worked on OOo2.0
(17:22:25) kuangliang: In
(17:22:33) Malte_: Using RTL_LOG (OOo source code feature) is also very helpful.
(17:22:36) mhu: Most tools are hard to use, because they produce too much data.
(17:22:40) Malte_: My tests are based on that.
(17:22:45) Malte_: See http://wiki.services.openoffice.org/wiki/Performance => RTL_LOG
(17:23:36) Malte_: BTW - the mentioned "Malte - we should really have your list embedded here ..." is this one:
(17:23:37) xiuzh1: Malte_: can dtrace used on Linux platform?
(17:23:47) Malte_: http://tools.openoffice.org/performance/performance-activities-overview.html
(17:24:03) Malte_: xiuzh1: IMHO - no.
(17:24:07) mhu: No, currently 'dtrace' is still a Solaris only feature.
(17:24:18) Malte_: But OpenSolaris is free!
(17:24:35) LiHeng: mhu: We will try to use the DTrace and Valgrind to profile the current version openoffice and make a report to expound the problem in our mind, and please help us to get the tools to measure that made by Malte
(17:24:44) mhu: But rumours say, that Apple is including dtrace in MacOSX (I think FreeBSD already has it).
(17:24:45) YuGuoqiang: How about gprof?
(17:24:45) Malte_: BTW - Sun Studio on Solaris is also much better than any Linux Debugger
(17:25:25) kuangliang: yes
(17:25:38) mhu: The latest SunStudio is also free, and works on Linux. But I have not yet tested it on Linux.
(17:26:20) LiHeng: mhu: We will try to use the DTrace and Valgrind to profile the current version openoffice and make a report to expound the problem in our mind, and please help us to get the tools to measure that made by Malte
(17:26:30) mhu: LiHeng: yes, we will help you getting the tools, and also with testing them.
(17:26:58) LiHeng: mhu: thank you very much
(17:27:41) LiHeng: mhu: should we do next step?
(17:27:49) mhu: LiHeng: you and your team can send email to me when and where you have a problem. When I cant answer, I'll ask Malte.
(17:28:56) mhu: LiHeng: next step? is not the time over for today?
(17:28:58) liangjun: mhu: think you .
(17:29:29) Malte_: One suggestion:
(17:29:32) mhu: LiHeng: what was the next step, that you wanted?
(17:29:44) Malte_: Instead of IRC meetings - wouldn't email be sufficient?
(17:29:53) LiHeng: mhu: ok we do next step next week?
(17:30:19) mhu: LiHeng: Okay for me, or, as Malte said, via email?
(17:30:52) mhu: LiHeng: But I can continue with IRC one hour a week.
(17:31:39) LiHeng: mhu,matle: ok , we can do a lot of thing in email, but we can continue with IRC
(17:32:19) mhu: LiHeng: fine. So make plan via IRC, do work via email?
(17:32:37) Malte_: MBA and me would prefer to do email ONLY...
(17:33:06) Malte_: Better exchanging mails every day when needed, then one fix meeting
(17:33:44) mhu: Okay, I would then ask Malte and mba to help, when we need them, okay?
(17:33:53) LiHeng: Matle_:can we do a meeting two weeks
(17:36:02) Malte_: That means: 2 more IRC before stopping IRC, or IRC every two weeks?
(17:36:05) LiHeng: Matle_: need discuss together
(17:36:09) mhu: LiHeng: we can do IRC every week, no problem for me. we ask others to join when we think we need them, okay?
(17:36:31) Malte_: Sounds good for me :)
(17:36:56) Malte_: Which remembers me that some of you wanted to send minutes from last meeting ;)
(17:36:57) xiuzh1: once a week is ok to discuss the requirement at the first several meetings.
(17:36:59) LiHeng: mhu:Okay for me
(17:37:44) mhu: LiHeng, xiuzh1: okay, thank you.
(17:37:52) xiuzh1: one hour per IRC meeting is OK, I think
(17:38:15) LiHeng: kuangliang :can you make the meeting minutes ?l
(17:38:56) mhu: LiHeng: shall I send the IRC log again, or do you have that already?
(17:39:20) LiHeng: mhu: yes, i have
(17:39:37) LiHeng: mhu: and thank you
(17:39:58) kuangliang: yes
(17:40:17) LiHeng: Thanks to everybody, and that's all
(17:40:26) mhu: Okay, thank you.
(17:40:57) Malte_: Bye :)
(17:41:01) xiuzh1: I have a news about the OOo code dump testing
(17:41:09) LiHeng: Bye Malte
(17:41:14) mhu: xiuzh1: yes?
(17:41:15) kuangliang: bye
(17:41:18) xiuzh1: not relationed to performance
(17:41:22) YuGuoqiang: bye
(17:41:27) liangjun: bye
(17:41:33) LiHeng: xiuzh1:tell us
(17:42:15) mhu: xiuzh1: I have a few minutes more time, please tell
(17:42:33) xiuzh1: There is a test report from Chinese CSIP. They have measured the classes of writer and sc,
(17:42:46) xiuzh1: they want to submit the report
(17:43:04) xiuzh1: who will they email ?
(17:43:46) mhu: Maybe Stefan? As I said, he was involved in a code analysis project here also.
(17:43:51) xiuzh1: they worked with klocwork
(17:44:38) LiHeng: xiuzh1:klocwork?
(17:44:52) mhu: But I can receive that report also, if you want.
(17:45:14) xiuzh1: LiHeng:yes
(17:45:20) xiuzh1: mhu: OK
(17:45:31) xiuzh1: I will email you
(17:45:35) LiHeng: xiuzh1:and i want to get a copy
(17:45:51) mhu: okay.
(17:45:52) xiuzh1: any other people needed?
(17:46:19) YuGuoqiang: xiuzhi: Please give me a copy also, thanks!
(17:46:32) xiuzh1: maybe mba need one
(17:46:38) mhu: let me look at the report first, then probably mba (mathias bauer) for sw and nn (niklas nebel) for sc.
(17:46:50) xiuzh1: OK
(17:46:51) liangjun: xiuzhi:and me .thanks!
(17:46:58) Malte_: And I just for my interest ;)
(17:47:35) mhu: okay, I need to leave now. Are we finished?
(17:47:39) xiuzh1: ok,
(17:47:40) xiuzh1: bye
(17:47:59) LiHeng: mhu:yes ,and next week same time?
(17:48:00) Malte_: Bye - again... ;)
(17:48:15) mhu: same time, next thursday, yes.
(17:48:33) mhu: good bye
(17:48:44) LiHeng: bye
(17:48:47) liangjun: bye
(17:51:17) xiuzh1: LiHeng: are you there?
(17:52:10) kuangliang: xiuzhi: i'm liheng
(17:52:59) mba: bye


Performance/Meetings/2007/11/22

Meeting Minutes
IRC Meeting of Sun Microsystems (StarOffice) with RedFlag2000
Performance Project


Date: 2007/11/22
Time: 15:55– 17:09
Meeting No.:


Agenda:

(15:55:51) LiHeng: xiuzhi thant you for attending
(15:56:03) xiuzhi: LiHeng:hi
(15:56:18) xiuzhi: LiHeng: you are welcome
(15:56:34) LiHeng: this time is first meeting ,please help us
(15:57:37) xiuzhi: LiHeng:when you talk with somebody. please print his name , for example: LiHeng:....
(15:58:07) LiHeng: how long the meeting will take every time?
(15:58:23) xiuzhi: op /LiHeng
(15:58:58) xiuzhi: kuangliang:hi
(15:59:13) xiuzhi: mba:morning
(15:59:22) LiHeng: glad
(15:59:34) YuGuoqiang: hello, everyone!
(15:59:43) mba: Good morning / afternoon to everybody!
(15:59:47) mhu: LiHeng: good afternoon; I think today the meeting can be less than 1 hour
(15:59:54) kuangliang: Good morning / afternoon to everybody!
(15:59:55) LiHeng: aha, glad to meet you mba
(16:00:04) mhu: Good afternoon / morning everyone.
(16:00:12) liangju1: Good afternoon / morning everyone.
(16:00:23) xiuzhi: shall we start?
(16:00:30) xiuzhi: Agenda:
(16:00:31) xiuzhi: 1.RedFlag staff self-introduction
(16:00:31) xiuzhi: 2.Sun Staff self-introduction
(16:00:31) xiuzhi: 3.discuss the requirements for performance
(16:00:31) xiuzhi: 4. Roundtable
(16:00:54) xiuzhi: A1: RedFlag staff self -introduction
(16:01:00) mhu: xiushi, yes we can start I think. The agenda is fine.
(16:01:42) LiHeng: ok , i am first
(16:02:03) LiHeng: My name is Li Heng
(16:02:24) LiHeng: Director of System research dept
(16:02:38) LiHeng: senior softare architect
(16:02:50) xiuzhi: I am Xiuzhi , major on Document Formart . I worked for RedFlag ch2000 for 6 years
(16:02:56) YuGuoqiang: I'm YuGuoqiang, you can call me Yu for short. I am an Architect of System Research Dept of Redflag2000.
(16:03:06) kuangliang: Hello,I'm Kuang Liang , an architect of System Research Dept
(16:03:45) liangju1: hello, I'm Zeng Liangjun.a architect of System Research Dept. Of Redflag2000
(16:04:07) LiHeng: Kuangliang and I have worked for RedFlag Ch2000 for 6 years too
(16:04:16) kuangliang: Yes
(16:04:55) mhu: Okay, I think I'm next.
(16:05:01) xiuzhi: A2.Sun Staff self-introduction
(16:05:50) mhu: I am Matthias Huetsch, Sun Senior Staff Engineer and Software Architect for StarOffice and OpenOffice...
(16:06:30) mhu: ...I am working for Sun / StarDivision for 11.5 years now in various positions.
(16:06:46) mhu: Nice to meet you all, and work with you.
(16:06:57) mba: I'm Mathias Bauer, former OOo Framework Project Lead and now Framework Co-Lead and Project Lead for Writer. At Sun I'm the manager of the Framework and Writer development teams. I'm working for Sun/StarDivision for more than 12 years.
(16:07:02) LiHeng: nice to meet you too
(16:07:19) xiuzhi: A3.discuss the requirements for performance
(16:07:47) mhu: LiHeng: will you start?
(16:07:53) LiHeng: okay
(16:09:20) LiHeng: i think the performance project will maintain a good performance of openoffice
(16:10:16) LiHeng: and the first we must locate the key part that results performance down,
(16:11:19) LiHeng: the project ,must collect all questions and suggestion about performance from end-user
(16:12:15) LiHeng: establish some item,pattern and design test case to evaluate performance of OO
(16:13:04) Malte_: Hi :)
(16:13:12) LiHeng: Hi
(16:13:48) Malte_: I get the status from MHU via phone...
(16:14:14) xiuzhi: (16:07:19) xiuzhi: A3.discuss the requirements for performance
(16:14:14) xiuzhi: (16:07:46) mhu: LiHeng: will you start?
(16:14:14) xiuzhi: (16:07:53) LiHeng: okay
(16:14:14) xiuzhi: (16:09:20) LiHeng: i think the performance project will maintain a good performance of openoffice
(16:14:14) xiuzhi: (16:10:17) LiHeng: and the first we must locate the key part that results performance down,
(16:14:14) xiuzhi: (16:11:19) LiHeng: the project ,must collect all questions and suggestion about performance from end-user
(16:14:17) xiuzhi: (16:12:15) LiHeng: establish some item,pattern and design test case to evaluate performance of OO
(16:14:30) LiHeng: in future we must provide some special gear to maintain performance of new features that will add into the next version
(16:14:46) LiHeng: that's all
(16:15:01) mhu: Malte: LiHeng just introduces his view of the project.
(16:15:49) mhu: LiHeng: thanks for the summary, I will answer in few seconds. What about Malte introducing himself quickly?
(16:16:07) LiHeng: okay
(16:16:10) xiuzhi: Malte_:morning
(16:16:18) Malte_: Sure, wait a moment :)
(16:16:52) Malte_: OK,
(16:16:54) Malte_: I am Malte Timmermann, working on StarOffice/OpenOffice.org on > 15 years now.
(16:16:55) Malte_: I worked a lot on performance, when OOo 2.0 early versions where VERY slow.
(16:17:22) Malte_: I also coordinated most of the efforts here then...
(16:17:59) mhu: Thanks Malte.
(16:18:09) Malte_: Focus was on startup and document load/save, but as you see, there is STILL a lot of work to do :(
(16:18:44) LiHeng: but it must be change :)
(16:18:48) kuangliang: yes
(16:19:22) Malte_: Sure, hope you guys will spend some full time work on it :)
(16:19:52) mhu: LiHeng: Let me try a summary of what you said. (1) maintain good performance, ...
(16:20:19) xiuzhi: RFch2000:
(16:20:43) YuGuoqiang: OK
(16:20:51) YuGuoqiang: xiuzhi:OK
(16:21:00) mhu: ...(2) locate key parts..., (3) collect requirements from end-user..., (4) establish test cases to monitor performance...
(16:21:21) xiuzhi: mhu,Malte_,mba: I told some basic rule of using IRC, sorry I use Chinese
(16:21:22) mhu: Did I understand that correctly?
(16:21:41) mhu: xiuzhi: okay, no problem
(16:21:41) LiHeng: mhu: we must do something that can build openoffice in good state very version in future
(16:21:49) Malte_: Point 4 was: evaluate, not monitor
(16:21:53) LiHeng: mhu:not one version
(16:22:01) Malte_: Sure monitoring is also important...
(16:22:44) mhu: LiHeng: Yes, not just one version, but maintain good performance for future versions
(16:22:58) LiHeng: i agree
(16:24:06) Malte_: JFYI - we have some automatic performance tests already.
(16:24:08) Malte_: They don't make the product faster, but they assure we don't become slower.
(16:24:14) mhu: Malte developed and introduced some performance monitoring framework for child workspaces here in hamburg.
(16:24:34) Malte_: We should try to bring them to OOo, IMHO.
(16:24:44) LiHeng: mhu /Malte: so we have to some works to help the other developer to find the performance problem in new feature
(16:24:45) Malte_: To RedFlag, at least.
(16:25:37) mhu: Malte_: perhaps we can work on these tests with LiHeng's team, and see how we can improve them so that they work in Bejing as well.
(16:26:10) LiHeng: we need the document about the monitoring framework
(16:26:22) LiHeng: Malte:we need the document about the monitoring framework
(16:26:58) Malte_: The automatic tests a good for
(16:27:00) Malte_: - testing a CWS doesn't make OOo slower
(16:27:02) Malte_: - check if your optimizations really help.
(16:27:03) Malte_: No document, "just" some Java code ;)
(16:27:55) LiHeng: Malte_: we need you help
(16:28:31) LiHeng: Malte_:OpenOffice is so large
(16:28:36) Malte_: If Dieter agrees, I bring them to OOo, and write some small documentation...
(16:28:48) Malte_: Large is an other topic ;)
(16:29:01) LiHeng: Malte_:Yes
(16:29:10) Malte_: Sure it also has some influence on performance, but large is not the biggest issue for this...
(16:29:26) Malte_: We need to analyze the start-up again.
(16:29:41) Malte_: I assume there is still lot of configuration pasring involved.
(16:29:45) xiuzhi: Malte_:code dump is OK, some document is better,I think
(16:29:52) mhu: Okay, I talk to Malte and Dieter how to publish the performance test that we have.
(16:30:07) Malte_: Yes.
(16:30:24) Malte_: That's one thing you can use for verifying your work.
(16:30:39) Malte_: But how/what do you plan to start with optimizing?
(16:30:47) mhu: Can we please come back to the (1)-(4) summary that I sent before?
(16:31:06) LiHeng: Malte_:We should define some number to expound the state of openoffice's performance
(16:31:09) xiuzhi: mhu:I think so
(16:31:34) mhu: I think we agree on (1) maintain long term good performance...
(16:31:41) LiHeng: yes
(16:32:09) Malte_: (1) maintain good performance
(16:32:12) Malte_: (2) locate key parts
(16:32:15) Malte_: (3) collect requirements from end-user
(16:32:15) Malte_: (4) establish test cases to evaluate/monitor performance
(16:32:17) Malte_: Yes, no discussion on 1.... :)
(16:32:21) mhu: (2) "locate key parts " is the difficult part, we will need much time to work on this
(16:32:56) LiHeng: mhu: we must do something for it
(16:33:20) mba: I miss the statement that we have "cold start" and "warm start" (second start) performance; both are influenced by very different parameters
(16:33:28) Malte_: I suggest RedFlag does some analyzes with profilers, and comes back with some suggestions we can discuss
(16:33:33) LiHeng: no location ,we have to face whole system
(16:33:34) mhu: (3) collect from end-user: Stefan Zimmermann did send me a document "Responses from the consumer", is that a good base to start discussion?
(16:33:54) mba: IMHO "cold start" has not been looked at until now but in fact is the bigger problem
(16:34:16) mba: Even our performance tests don't cover it
(16:34:32) Malte_: Right... Hard to measure
(16:34:46) Malte_: At least in automatic tests...
(16:35:21) mhu: (4) test case to (a) evaluate and (b) monitor; I think we have talked about (4b)
(16:37:14) mhu: I would like to into (3) first: determine what are the largest problems for an end-user, and agree on that...
(16:37:18) LiHeng: We will do evaluate majar version of OpenOffice, and collect problem from end-user
(16:38:28) mhu: LiHeng: yes, verify with end-user what largest problem is , that is good.
(16:38:39) LiHeng: :0
(16:38:43) LiHeng: :)
(16:39:42) Malte_: Well, I don't think that we don't know the answer ;)
(16:39:52) Malte_: Startup + doc load/save?
(16:39:58) mhu: It is so easy to say, OOo is slow. We are engineers and need to look somewhat deeper, and that starts with asking: what is actually slow?
(16:39:59) Malte_: Maybe memory consumption, too#
(16:41:33) LiHeng: yes
(16:41:46) mba: mhu: are you recommending profiling sessions?
(16:41:54) LiHeng: we need more number to analysis the problem
(16:42:02) mhu: LiHeng: You know the "Responses from consumer" spreadsheet, right?
(16:42:27) LiHeng: mhu:yes i know it
(16:43:01) Malte_: Mmmh - I don't :(
(16:43:20) mhu: LiHeng: can we start with that? I think it already has some answers, like Malte said: combined startup and document load times, document save times.
(16:43:44) LiHeng: mhu: it 's only a arrange
(16:43:54) mhu: mba: sure, we always start with profiling :-)
(16:44:19) mhu: LiHeng: can you explain? it is only what?
(16:46:05) mhu: LiHeng: did you mean: it is only one aspect of the entire problem? or something different?
(16:46:15) LiHeng: mhu: "Responses from consumer" is only arrange some number from user, and we must analyze
(16:46:21) LiHeng: it
(16:46:41) LiHeng: yes
(16:47:06) mhu: LiHeng: we need to further analyze it, I only wanted to take that as a start to discuss.
(16:47:41) LiHeng: yes
(16:47:54) LiHeng: what is the profiling
(16:48:07) LiHeng: mhu:what is the profiling?
(16:49:03) mhu: Profiling means "to profile where (in the code most) of the time is spent for some operation".
(16:50:07) mhu: For example Intel's "VTune" is such a tool, or the opensource "callgrind"
(16:50:35) LiHeng: i know
(16:51:05) mhu: okay, that is what we mean with "profiling"
(16:52:44) LiHeng: mhu:do you have value of profiling?
(16:54:33) mhu: LiHeng: no, in my expirience it is not static. We need to do that as continous part of our analysis where the largest problem is...
(16:55:03) mhu: ...and that changes over time, when new features are integrated or other code is changed...
(16:55:41) mhu: ...so, one version may be fast with something, then someone changes code, and it is slower...
(16:56:19) LiHeng: mhu:so we must find it in child workspace
(16:57:02) mhu: LiHeng: yes, that is best. find it in the child workspace where the code is introduced.
(16:58:16) LiHeng: mhu: if we find the problem in a child workspace ,we must analyze it around to try to find out some framework should be changed
(16:58:19) mhu: What I mean with not static: I know some data for OOo 2.0, but OOo 2.3.1 can have it's problems at other places.
(16:59:35) mhu: Okay, how do we continue from here? I think we need much more time for discussions :-)
(16:59:56) LiHeng: so we need to kown whole architect of OpenOffice
(17:00:43) mhu: I think you already know much of the whole architecture.
(17:01:07) LiHeng: Not every details
(17:01:22) mhu: No one knowns all details :-)
(17:01:49) mhu: But together, we know enough to solve most problems
(17:02:03) LiHeng: Yes
(17:03:26) mhu: LiHeng: can we meet next week at the same time? I like to write you an email to prepare that meeting.
(17:03:44) LiHeng: Okay,
(17:04:02) Malte_: If I should also attend, then 30 minutes later, please
(17:04:25) LiHeng: my email: lih@redflag2000.cn
(17:05:32) LiHeng: mhu: thank you and see you next week
(17:05:37) mhu: LiHeng: thanks, my email is simply matthias.huetsch@sun.com (but Peter Junge and Stefan Zimmermann know me, you can ask them).
(17:06:23) LiHeng: xiuzhi: something you want to talk?
(17:06:38) xiuzhi: LiHeng:no
(17:06:46) mhu: xuizhi, LiHeng: Do you have the time to start 30min later next time?
(17:06:54) xiuzhi: LiHeng:Please ask someone to write the meeting minutes
(17:07:12) xiuzhi: mhu:Yes
(17:07:15) LiHeng: ok
(17:07:28) Malte_: Perfect :)
(17:07:30) mhu: xiuzhi: I hope that I can send the logfile for this session as minutes.
(17:07:48) LiHeng: mhu : yes i will send the minutes to you
(17:08:05) xiuzhi: mhu:fine, but it is too simple , I have a meeting minutes template
(17:08:20) Malte_: Nice to hear :)
(17:08:23) xiuzhi: LiHeng: Please ask liutao for the template
(17:08:35) LiHeng: mhu:you can send the template to me
(17:08:38) Malte_: Probably better then a simple log file...
(17:09:02) mhu: Okay, then please send real minutes. Have a good evening. See you next week.
(17:09:23) Malte_: Bye :)
(17:09:33) LiHeng: Bye!
(17:09:37) YuGuoqiang: Bye:)
(17:09:40) kuangliang: Bye
(17:09:43) liangju1: Bye:)
(17:09:53) mhu: Bye all

Go back

Personal tools