Erlang/OTP Forums

Author Message

<  Erlang patches mailing list  ~  Optimization of beams string table generation

Guest
Posted: Sun Jul 04, 2010 1:19 pm Reply with quote
Guest
Hello,

beam_dict:string and the whole string table code is based on naive string search and compiling a module with thousands of binary strings takes several minutes. The following patch replaces the code with calls to binary:match/2.

git fetch git://github.com/pguyot/otp.git pg/optimize_beam_dict_string_table

http://github.com/pguyot/otp/commit/13ca6aa7b74c7887ae6c3a42b35769524af4903a

Regards,

Paul
--
Semiocast http://semiocast.com/
+33.175000290 - 62 bis rue Gay-Lussac, 75005 Paris


________________________________________________________________
erlang-patches (at) erlang.org mailing list.
See http://www.erlang.org/faq.html
To unsubscribe; mailto:erlang-patches-unsubscribe@erlang.org

Post received from mailinglist
Guest
Posted: Sun Jul 04, 2010 1:20 pm Reply with quote
Guest
Hello,

beam_dict:string and the whole string table code is based on naive string search and compiling a module with thousands of binary strings takes several minutes. The following patch replaces the code with calls to binary:match/2.

git fetch git://github.com/pguyot/otp.git pg/optimize_beam_dict_string_table

http://github.com/pguyot/otp/commit/13ca6aa7b74c7887ae6c3a42b35769524af4903a

Regards,

Paul
--
Semiocast http://semiocast.com/
+33.175000290 - 62 bis rue Gay-Lussac, 75005 Paris


________________________________________________________________
erlang-patches (at) erlang.org mailing list.
See http://www.erlang.org/faq.html
To unsubscribe; mailto:erlang-patches-unsubscribe@erlang.org

Post received from mailinglist
Guest
Posted: Mon Jul 05, 2010 9:41 am Reply with quote
Guest
On Sun, Jul 04, 2010 at 03:19:22PM +0200, Paul Guyot wrote:
> Hello,
>
> beam_dict:string and the whole string table code is based on naive string search and compiling a module with thousands of binary strings takes several minutes. The following patch replaces the code with calls to binary:match/2.
>
> git fetch git://github.com/pguyot/otp.git pg/optimize_beam_dict_string_table

Thank you. It will be included in 'pu', after line breaking the
commit comment.

Note that we prefer hyphen ('-') as delimiter in branch names, except for
when it ought to be underscore. E.g pg/optimize-beam_dict-string-table.
I kept your name this time to minimize my hazzle...

>
> http://github.com/pguyot/otp/commit/13ca6aa7b74c7887ae6c3a42b35769524af4903a
>
> Regards,
>
> Paul
> --
> Semiocast http://semiocast.com/
> +33.175000290 - 62 bis rue Gay-Lussac, 75005 Paris
>
>
> ________________________________________________________________
> erlang-patches (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:erlang-patches-unsubscribe@erlang.org
>

--

/ Raimo Niskanen, Erlang/OTP, Ericsson AB

________________________________________________________________
erlang-patches (at) erlang.org mailing list.
See http://www.erlang.org/faq.html
To unsubscribe; mailto:erlang-patches-unsubscribe@erlang.org

Post received from mailinglist
Guest
Posted: Mon Jul 05, 2010 9:42 am Reply with quote
Guest
On Sun, Jul 04, 2010 at 03:19:22PM +0200, Paul Guyot wrote:
> Hello,
>
> beam_dict:string and the whole string table code is based on naive string search and compiling a module with thousands of binary strings takes several minutes. The following patch replaces the code with calls to binary:match/2.
>
> git fetch git://github.com/pguyot/otp.git pg/optimize_beam_dict_string_table

Thank you. It will be included in 'pu', after line breaking the
commit comment.

Note that we prefer hyphen ('-') as delimiter in branch names, except for
when it ought to be underscore. E.g pg/optimize-beam_dict-string-table.
I kept your name this time to minimize my hazzle...

>
> http://github.com/pguyot/otp/commit/13ca6aa7b74c7887ae6c3a42b35769524af4903a
>
> Regards,
>
> Paul
> --
> Semiocast http://semiocast.com/
> +33.175000290 - 62 bis rue Gay-Lussac, 75005 Paris
>
>
> ________________________________________________________________
> erlang-patches (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:erlang-patches-unsubscribe@erlang.org
>

--

/ Raimo Niskanen, Erlang/OTP, Ericsson AB

________________________________________________________________
erlang-patches (at) erlang.org mailing list.
See http://www.erlang.org/faq.html
To unsubscribe; mailto:erlang-patches-unsubscribe@erlang.org

Post received from mailinglist

Display posts from previous:  

All times are GMT
Page 1 of 1
This forum is locked: you cannot post, reply to, or edit topics.

Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You cannot download files in this forum