Hi Jocelyn,
right, we didn't yet try P8 transactional memory functions. There're no firm
plans either, but there was definitely some research.
Regards,
Sergey
On Sat, May 02, 2015 at 09:26:42PM +0200, jocelyn fournier wrote:
> Hi Sergey,
>
> Just to be sure, currently MariaDB doesn't implement any Hardware
> Transactional Memory Built-in Functions ?
> If so, is there any plan to evaluate the gain they could offer to MariaDB ?
>
> Thanks and regards,
> Jocelyn Fournier
>
> Le 04/12/2014 14:45, s...@mariadb.org a écrit :
> >revision-id: 4bff8b0b03ba82cd0ae6817b54de1780e89047ca
> >parent(s): 3526fe1b6000b2558290007e5cc3a1018850787c
> >committer: Sergey Vojtovich
> >branch nick: 10.1
> >timestamp: 2014-12-04 17:44:46 +0400
> >message:
> >
> >MDEV-7004 - Merge scalability fixes from 10.0-power
> >
> >Preallocate dynamic array and bitmap on mem_root to avoid expensive malloc.
> >This reduces number of allocations from 39 to 31 per OLTP RO transaction.
> >
> >---
> > sql/opt_range.cc | 12 ++--
> > 1 file changed, 6 insertions(+), 6 deletions(-)
> >
> >diff --git a/sql/opt_range.cc b/sql/opt_range.cc
> >index 1a9ae3d..813508c 100644
> >--- a/sql/opt_range.cc
> >+++ b/sql/opt_range.cc
> >@@ -1838,8 +1838,6 @@ void SQL_SELECT::cleanup()
> >index= key_nr;
> >head= table;
> >key_part_info= head->key_info[index].key_part;
> >- my_init_dynamic_array(&ranges, sizeof(QUICK_RANGE*), 16, 16,
> >-MYF(MY_THREAD_SPECIFIC));
> >/* 'thd' is not accessible in QUICK_RANGE_SELECT::reset(). */
> >mrr_buf_size= thd->variables.mrr_buff_size;
> >@@ -1857,9 +1855,12 @@ void SQL_SELECT::cleanup()
> >file= head->file;
> >record= head->record[0];
> >- /* Allocate a bitmap for used columns (Q: why not on MEM_ROOT?) */
> >- if (!(bitmap= (my_bitmap_map*) my_malloc(head->s->column_bitmap_size,
> >- MYF(MY_WME |
> >MY_THREAD_SPECIFIC
> >+ my_init_dynamic_array2(&ranges, sizeof(QUICK_RANGE*),
> >+ thd->alloc(sizeof(QUICK_RANGE*) * 16), 16, 16,
> >+ MYF(MY_THREAD_SPECIFIC));
> >+
> >+ /* Allocate a bitmap for used columns */
> >+ if (!(bitmap= (my_bitmap_map*) thd->alloc(head->s->column_bitmap_size)))
> >{
> > column_bitmap.bitmap= 0;
> > *create_error= 1;
> >@@ -1923,7 +1924,6 @@ void QUICK_RANGE_SELECT::range_end()
> > }
> > delete_dynamic(&ranges); /* ranges are allocated in alloc */
> > free_root(&alloc,MYF(0));
> >-my_free(column_bitmap.bitmap);
> >}
> >my_free(mrr_buf_desc);
> >DBUG_VOID_RETURN;
> >___
> >commits mailing list
> >comm...@mariadb.org
> >https://lists.askmonty.org/cgi-bin/mailman/listinfo/commits
>
___
Mailing list: https://launchpad.net/~maria-developers
Post to : maria-developers@lists.launchpad.net
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp