[asterisk-bugs] [JIRA] (ASTERISK-25842) Move from linked lists to another type
Joshua Colp (JIRA)
noreply at issues.asterisk.org
Sun Mar 13 13:46:56 CDT 2016
[ https://issues.asterisk.org/jira/browse/ASTERISK-25842?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Joshua Colp closed ASTERISK-25842.
----------------------------------
Resolution: Suspended
Before opening an issue on the issue tracker this type of thing should be discussed on the asterisk-dev mailing list as it has far reaching consequences and should be discussed first.
> Move from linked lists to another type
> --------------------------------------
>
> Key: ASTERISK-25842
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-25842
> Project: Asterisk
> Issue Type: New Feature
> Security Level: None
> Components: Core/General
> Affects Versions: 13.7.2
> Reporter: Badalian Vyacheslav
>
> Hello dev.
> I vote on the care of using a linked list.
> You must use the combined aligned memory area for storing the list so that you can use vectorization and avx, avx2, avx256 optimizations.
> For example smaller lists may be held without locks in a single pass. Ie the operation will be the Atomic.
> A linked list does not allow vectorization and search all the elements by design.
> I propose, in order not to alter ABI add an array-reference to the head and SIMD to use it as an assistant.
> I can implement the option, but to be honest a little on a clean gcc is not convenient. That the command asterisk thinks of OpenMP to work with SIMD?
> i think we may use some like this
> {code}
> # aligned 8
> struct head {
> struct * before:
> struct[512] ptr_array;
> struct * after:
> }
> {code}
> use 512 is optimal for avx2 multicore, in futere we may change it to 1024 pointers in struct
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list