Quantcast

Patch for MarkManager

classic Classic list List threaded Threaded
6 messages Options
Christoph Lutz Christoph Lutz
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Patch for MarkManager

Hi all,

this is a patch we wrote during the libreoffice hackfest 2011 for
sw/source/core/inc/MarkManager.hxx and sw/source/core/doc/docbm.cxx
which improves speed of mailmerge. Bjoern already knows details so he
might be the one to review the patch... The patch could be applied
under the lgpl.

bye,
Christoph Lutz, Landeshauptstadt München

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

markmanager.patch (4K) Download Attachment
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Patch for MarkManager

Hi Christoph,

On Sun, 4 Sep 2011 15:05:32 +0200
Christoph Lutz <[hidden email]> wrote:

> this is a patch we wrote during the libreoffice hackfest 2011 for
> sw/source/core/inc/MarkManager.hxx and sw/source/core/doc/docbm.cxx
> which improves speed of mailmerge. Bjoern already knows details so he
> might be the one to review the patch... The patch could be applied
> under the lgpl.

Patch looks good, Just to clarify before pushing, is it contributed
under:
 MPL 1.1 / GPLv3+ / LGPLv3+
as per http://wiki.documentfoundation.org/License_Policy ?

Best,

Bjoern

--
https://launchpad.net/~bjoern-michaelsen


_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Christoph Lutz Christoph Lutz
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Patch for MarkManager

Hi Björn,

today I managed to improve the patch again. The patch now speeds up
our mailmerge-Szenario enormously and seems to eliminate the
exponential waste of cpu-cycles. Would you please have a look at it?

here some measurings:

MailMerge-Time (in ms) without patch for 10, 50, 100, 150 datasets:
2793, 11821, 28608, 64395
MailMerge-Time (in ms) with first patch for 10, 50, 100, 150 datasets:
2561, 11044, 26226, 55812
MailMerge-Time (in ms) with this patch for 10, 50, 100, 150 datasets:
1838, 7357, 14413, 21558

2011/9/6 Christoph Lutz <[hidden email]>:

> 2011/9/5 Bjoern Michaelsen <[hidden email]>:
>> On Sun, 4 Sep 2011 15:05:32 +0200
>> Christoph Lutz <chrlutz-gM/[hidden email]> wrote:
>>
>>> this is a patch we wrote during the libreoffice hackfest 2011 for
>>> sw/source/core/inc/MarkManager.hxx and sw/source/core/doc/docbm.cxx
>>> which improves speed of mailmerge. Bjoern already knows details so he
>>> might be the one to review the patch... The patch could be applied
>>> under the lgpl.
>>
>> Patch looks good, Just to clarify before pushing, is it contributed
>> under:
>>  MPL 1.1 / GPLv3+ / LGPLv3+
>> as per http://wiki.documentfoundation.org/License_Policy ?
>
That's OK!

Best,
Christoph

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

markmanager_plusplus.patch (6K) Download Attachment
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[PUSHED] Patch for MarkManager

On Tue, 6 Sep 2011 17:36:18 +0200
Christoph Lutz <[hidden email]> wrote:
 

> today I managed to improve the patch again. The patch now speeds up
> our mailmerge-Szenario enormously and seems to eliminate the
> exponential waste of cpu-cycles. Would you please have a look at it?
>
> here some measurings:
>
> MailMerge-Time (in ms) without patch for 10, 50, 100, 150 datasets:
> 2793, 11821, 28608, 64395
> MailMerge-Time (in ms) with first patch for 10, 50, 100, 150 datasets:
> 2561, 11044, 26226, 55812
> MailMerge-Time (in ms) with this patch for 10, 50, 100, 150 datasets:
> 1838, 7357, 14413, 21558

Wow, great win! Pushed as:
http://cgit.freedesktop.org/libreoffice/core/commit/?id=e024f616934bb78fba8c8101264806d507068d7e
with some minor tuning:
- formatting (whitespace mostly)
- constness

Could you maybe try, if a pragmatic:
 m_aMarkBasenameMapUniqueOffset.clear();
at:
  http://cgit.freedesktop.org/libreoffice/core/tree/sw/source/core/doc/docbm.cxx?id=e024f616934bb78fba8c8101264806d507068d7e#n491
and
  http://cgit.freedesktop.org/libreoffice/core/tree/sw/source/core/doc/docbm.cxx?id=e024f616934bb78fba8c8101264806d507068d7e#n743
kills the performance gain?

If not, that would prevent the behavior change in for example the
scenario:
- Create Mark
- Copy Mark
- Copy Mark
- Delete First Copied Mark
- Copy Mark

Best,

Bjoern

--
https://launchpad.net/~bjoern-michaelsen


_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Fridrich Strba-3 Fridrich Strba-3
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [REVERTED] Patch for MarkManager

I am sorry, but I had to revert this patch because it was causing
crashes in Windows build when loading any document into writer or when
trying to save a document from writer.

It would be nice to check on windows to see whether it can be fixed, but
we did not have much time for that now, so I just reverted.

Sorry again

F.

On 06/09/11 19:22, Bjoern Michaelsen wrote:

> On Tue, 6 Sep 2011 17:36:18 +0200
> Christoph Lutz <[hidden email]> wrote:
>  
>> today I managed to improve the patch again. The patch now speeds up
>> our mailmerge-Szenario enormously and seems to eliminate the
>> exponential waste of cpu-cycles. Would you please have a look at it?
>>
>> here some measurings:
>>
>> MailMerge-Time (in ms) without patch for 10, 50, 100, 150 datasets:
>> 2793, 11821, 28608, 64395
>> MailMerge-Time (in ms) with first patch for 10, 50, 100, 150 datasets:
>> 2561, 11044, 26226, 55812
>> MailMerge-Time (in ms) with this patch for 10, 50, 100, 150 datasets:
>> 1838, 7357, 14413, 21558
>
> Wow, great win! Pushed as:
> http://cgit.freedesktop.org/libreoffice/core/commit/?id=e024f616934bb78fba8c8101264806d507068d7e
> with some minor tuning:
> - formatting (whitespace mostly)
> - constness
>
> Could you maybe try, if a pragmatic:
>  m_aMarkBasenameMapUniqueOffset.clear();
> at:
>   http://cgit.freedesktop.org/libreoffice/core/tree/sw/source/core/doc/docbm.cxx?id=e024f616934bb78fba8c8101264806d507068d7e#n491
> and
>   http://cgit.freedesktop.org/libreoffice/core/tree/sw/source/core/doc/docbm.cxx?id=e024f616934bb78fba8c8101264806d507068d7e#n743
> kills the performance gain?
>
> If not, that would prevent the behavior change in for example the
> scenario:
> - Create Mark
> - Copy Mark
> - Copy Mark
> - Delete First Copied Mark
> - Copy Mark
>
> Best,
>
> Bjoern
>

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Bjoern Michaelsen Bjoern Michaelsen
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [REVERTED] Patch for MarkManager

On Wed, 14 Sep 2011 16:18:51 +0200
Fridrich Strba
<[hidden email]>
wrote:

> I am sorry, but I had to revert this patch because it was causing
> crashes in Windows build when loading any document into writer or when
> trying to save a document from writer.
>
> It would be nice to check on windows to see whether it can be fixed,
> but we did not have much time for that now, so I just reverted.
>
> Sorry again

Should be fixed with:
http://cgit.freedesktop.org/libreoffice/core/commit/?id=dd482fde498c71025397f5f5c21ce6c65aa15892

(according to our discussion on IRC, havent tested on Windows, sorry)

Best,

Bjoern


--
https://launchpad.net/~bjoern-michaelsen


_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Loading...