to keep runtime short
* fixed pointer size warning on 32-bit arch
Paul Szczepanek (2):
eal: add pointer compression functions
test: add pointer compress tests to ring perf test
.mailmap | 1 +
app/test/test_ring.h | 59 +-
app/test
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
Signed
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
On 11/10/2023 14:36, Honnappa Nagarahalli wrote:
-Original Message-
From: Thomas Monjalon
Sent: Monday, October 9, 2023 10:54 AM
To: Paul Szczepanek
Cc: dev@dpdk.org; Honnappa Nagarahalli ;
Kamalakshitha Aligeri
Subject: Re: [RFC 1/2] eal: add pointer compression functions
[...]
I
On 09/10/2023 10:53, Juraj Linkeš wrote:
The aarch32 with gcc13 fails with:
Compiler for C supports arguments -march=armv8-a: NO
../config/arm/meson.build:714:12: ERROR: Problem encountered: No
suitable armv8 march version found.
This is because we test -march=armv8-a alone (without the -mpf
On 28/09/2023 13:18, Juraj Linkeš wrote:
Unify with C recommendations which allow line length of up to 100
characters.
Signed-off-by: Owen Hilyard
Signed-off-by: Juraj Linkeš
---
.editorconfig| 2 +-
doc/doc_build/meson-private/meson.lock | 0
doc/guides/con
/README.md | 55 +
3 files changed, 123 insertions(+)
create mode 100644 dts/.devcontainer/devcontainer.json
create mode 100644 dts/Dockerfile
create mode 100644 dts/README.md
[..]
Acked-by: Paul Szczepanek
overhead.
In a more realistic mock application running the l3 forwarding dpdk
example that works in pipeline mode this translated into a ~5% throughput
increase on an ampere altra.
Paul Szczepanek (2):
eal: add pointer compression functions
test: add pointer compress tests to ring perf test
-off-by: Paul Szczepanek
Signed-off-by: Kamalakshitha Aligeri
Reviewed-by: Honnappa Nagarahalli
---
.mailmap | 1 +
lib/eal/include/meson.build| 1 +
lib/eal/include/rte_ptr_compress.h | 158 +
3 files changed, 160 insertions
. Additionally more bulk sizes were
added to showcase their effects on compression. To keep runtime
reasoanble iterations where adjusted to take into account bulk sizes.
Old printfs are adjusted to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa
On 20/08/2024 16:54, Stephen Hemminger wrote:
> On Tue, 20 Aug 2024 14:42:56 +0100
> Alex Chapman wrote:
>
>> Hi Stephen,
>>
>> I have gone through your patch series and the hexdump option would be
>> quite valuable for use in DTS.
>>
>> However I am currently facing the issue of distinguishing
t
within DPDK and it's applianances?
Konstantin
The intended usage is explained in the cover email (see below) and demonstrated
in the test supplied in the following patch - when sending arrays of pointers
between cores as it happens in a forwarding example.
On 01/11/2023 18:12, Paul Szc
-by: Paul Szczepanek
Signed-off-by: Kamalakshitha Aligeri
Reviewed-by: Honnappa Nagarahalli
---
.mailmap | 1 +
lib/eal/include/meson.build| 1 +
lib/eal/include/rte_ptr_compress.h | 266 +
3 files changed, 268 insertions(+)
create
:
* disable NEON and SVE implementation on AARCH32 due to wrong pointer size
v6:
* added example usage to commit message of the initial commit
Paul Szczepanek (4):
eal: add pointer compression functions
test: add pointer compress tests to ring perf test
docs: add pointer compression to the EAL guide
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Documentation added in the EAL guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
---
.../prog_guide/env_abstraction_layer.rst | 142 ++
1 file changed
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly.
Signed-off-by: Paul Szczepanek
---
app/test/meson.build | 1 +
app/test/test_eal_ptr_compress.c | 108
-by: Paul Szczepanek
Signed-off-by: Kamalakshitha Aligeri
Reviewed-by: Honnappa Nagarahalli
---
lib/eal/include/meson.build| 1 +
lib/eal/include/rte_ptr_compress.h | 266 +
2 files changed, 267 insertions(+)
create mode 100644 lib/eal/include
:
* disable NEON and SVE implementation on AARCH32 due to wrong pointer size
v6:
* added example usage to commit message of the initial commit
v7:
* rebase to remove clashing mailmap changes
Paul Szczepanek (4):
eal: add pointer compression functions
test: add pointer compress tests to ring perf test
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Documentation added in the EAL guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
---
.../prog_guide/env_abstraction_layer.rst | 142 ++
1 file changed
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly.
Signed-off-by: Paul Szczepanek
---
app/test/meson.build | 1 +
app/test/test_eal_ptr_compress.c | 108
On 04/03/2024 14:44, Konstantin Ananyev wrote:
>> This feature is targeted for pipeline mode of applications. We see many
>> customers using pipeline mode. This feature helps in reducing
>> the cost of transferring the packets between cores by reducing the copies
>> involved.
>
> I do understand
On 15/05/2024 23:34, Morten Brørup wrote:
>> From: Paul Szczepanek [mailto:paul.szczepa...@arm.com]
>>
>> AFAIK DPDK rte_mempool does require the addresses to be virtually
>> contiguous as the memory reservation is done during creation of the
>> mempool and a singl
I have added macros to help find the parameters and I have added mempool
functions that allow you to determine if you can use the mempool and
what params it needs. The new mempool functions are mentioned in the
docs for ptr compress.
Please take a look at v11.
I did not add a new make pkt buf API
Paul Szczepanek (6):
lib: allow libraries with no sources
mempool: add functions to get extra mempool info
ptr_compress: add pointer compression library
test: add pointer compress tests to ring perf test
docs: add pointer compression guide
test: add unit test for ptr compression
Allow header only libraries.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Jack Bond-Preston
Acked-by: Bruce Richardson
---
lib/meson.build | 16
1 file changed, 16 insertions(+)
diff --git a/lib/meson.build b/lib/meson.build
index 179a272932
Add two functions:
- rte_mempool_get_mem_range - get virtual memory range
of the objects in the mempool,
- rte_mempool_get_obj_alignment - get alignment of
objects in the mempool.
Add two tests that test these new functions.
Signed-off-by: Paul Szczepanek
Reviewed-by: Jack Bond-Preston
from a base
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Documentation added in the prog guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Nathan Brown
Reviewed-by: Jack Bond-Preston
---
MAINTAINERS
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Nathan Brown
Reviewed-by: Jack Bond-Preston
---
MAINTAINERS
On 24/05/2024 10:09, Konstantin Ananyev wrote:
>
>
>> I have added macros to help find the parameters and I have added mempool
>> functions that allow you to determine if you can use the mempool and
>> what params it needs. The new mempool functions are mentioned in the
>> docs for ptr compres
On 24/05/2024 13:20, Morten Brørup wrote:
>> From: Paul Szczepanek [mailto:paul.szczepa...@arm.com]
>> Sent: Friday, 24 May 2024 10.37
>>
>> +size_t rte_mempool_get_obj_alignment(struct rte_mempool *mp)
>> +{
>> +if (mp == NULL)
>> +
Allow header only libraries.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Acked-by: Bruce Richardson
---
lib/meson.build | 16
1 file changed, 16 insertions(+)
diff --git a/lib/meson.build b/lib/meson.build
index 179a272932..7c90602bf5 100644
--- a/lib
Add two functions:
- rte_mempool_get_mem_range - get virtual memory range
of the objects in the mempool,
- rte_mempool_get_obj_alignment - get alignment of
objects in the mempool.
Add two tests that test these new functions.
Signed-off-by: Paul Szczepanek
Reviewed-by: Jack Bond-Preston
* added doxygen and prefixes to macros
* use rte_bitops for clz and ctz
* added unit tests to verify macros
* fixed incorrect letter case in docs
Paul Szczepanek (6):
lib: allow libraries with no sources
mempool: add functions to get extra mempool info
ptr_compress: add pointer compression
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
from a base
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly. Additionally tests helper macros perform
calculations correctly.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by
Documentation added in the prog guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Nathan Brown
Reviewed-by: Jack Bond-Preston
---
MAINTAINERS
On 28/05/2024 20:29, Paul Szczepanek wrote:
>
>
> On 24/05/2024 10:09, Konstantin Ananyev wrote:
>>
>>
>>> I have added macros to help find the parameters and I have added mempool
>>> functions that allow you to determine if you can use the mempoo
common_count = rte_mempool_ops_get_count(mp);
> if ((cache_count + common_count) > mp->size)
It's useful information to dump. Maybe consider adding something akin to
RTE_LIBRTE_MEMPOOL_STATS to gate this in case the prints are
overwhelming due to high list element number.
Reviewed-by: Paul Szczepanek
On 29/05/2024 14:56, Morten Brørup wrote:
>> From: Paul Szczepanek [mailto:paul.szczepa...@arm.com]
>> Sent: Wednesday, 29 May 2024 12.23
>>
>> Add two functions:
>> - rte_mempool_get_mem_range - get virtual memory range
>> of the objects in the mempool,
>
Allow header only libraries.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Acked-by: Bruce Richardson
---
lib/meson.build | 16
1 file changed, 16 insertions(+)
diff --git a/lib/meson.build b/lib/meson.build
index 179a272932..7c90602bf5 100644
--- a/lib
* added doxygen and prefixes to macros
* use rte_bitops for clz and ctz
* added unit tests to verify macros
* fixed incorrect letter case in docs
v13
* added contiguous parameter to rte_mempool_get_mem_range
* made rte_mempool_get_mem_range parameters optional
Paul Szczepanek (6):
lib: allow
Add two functions:
- rte_mempool_get_mem_range - get virtual memory range
of the objects in the mempool,
- rte_mempool_get_obj_alignment - get alignment of
objects in the mempool.
Add two tests that test these new functions.
Signed-off-by: Paul Szczepanek
Reviewed-by: Jack Bond-Preston
from a base
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly. Additionally tests helper macros perform
calculations correctly.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by
Documentation added in the prog guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Nathan Brown
Reviewed-by: Jack Bond-Preston
---
MAINTAINERS
Recheck-request: github-robot
Recheck-request: iol-unit-amd64-testing
Recheck-request: github-robot
Recheck-request: iol-unit-amd64-testing
rte_mempool_get_mem_range in a struct
* added consts to function parameters where appropriate
Paul Szczepanek (6):
lib: allow libraries with no sources
mempool: add functions to get extra mempool info
ptr_compress: add pointer compression library
test: add pointer compress tests to ring perf test
Allow header only libraries.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Acked-by: Bruce Richardson
---
lib/meson.build | 16
1 file changed, 16 insertions(+)
diff --git a/lib/meson.build b/lib/meson.build
index 179a272932..7c90602bf5 100644
--- a/lib
Add two functions:
- rte_mempool_get_mem_range - get virtual memory range
of the objects in the mempool,
- rte_mempool_get_obj_alignment - get alignment of
objects in the mempool.
Add two tests that test these new functions.
Signed-off-by: Paul Szczepanek
Reviewed-by: Jack Bond-Preston
from a base
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Documentation added in the prog guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Nathan Brown
Reviewed-by: Jack Bond-Preston
---
MAINTAINERS
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly. Additionally tests helper macros perform
calculations correctly.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by
On 06/06/2024 13:28, Konstantin Ananyev wrote:
>
>
>> Add two functions:
>> - rte_mempool_get_mem_range - get virtual memory range
>> of the objects in the mempool,
>> - rte_mempool_get_obj_alignment - get alignment of
>> objects in the mempool.
>>
>> Add two tests that test these new functions
Allow header only libraries.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Acked-by: Bruce Richardson
---
lib/meson.build | 16
1 file changed, 16 insertions(+)
diff --git a/lib/meson.build b/lib/meson.build
index 179a272932..7c90602bf5 100644
--- a/lib
rte_mempool_get_mem_range in a struct
* added consts to function parameters where appropriate
v15
* fix whitespace in rel notes
* move parameter check to after variable declaration
* change the naming of the range variable in macros
* improve doxygen
Paul Szczepanek (6):
lib: allow libraries with no
Add two functions:
- rte_mempool_get_mem_range - get virtual memory range
of the objects in the mempool,
- rte_mempool_get_obj_alignment - get alignment of
objects in the mempool.
Add two tests that test these new functions.
Signed-off-by: Paul Szczepanek
Reviewed-by: Jack Bond-Preston
from a base
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
Documentation added in the prog guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Nathan Brown
Reviewed-by: Jack Bond-Preston
---
MAINTAINERS
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly. Additionally tests helper macros perform
calculations correctly.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by
On 10/06/2024 15:24, Konstantin Ananyev wrote:
[snip]
>
> With that changes in place:
> Acked-by: Konstantin Ananyev
>
I have applied your comments in v15.
[snip]
>> +
>> +size_t rte_mempool_get_obj_alignment(const struct rte_mempool *mp)
>> +{
>> +if (mp == NULL)
>> +retur
On 10/06/2024 16:18, David Marchand wrote:
> Hello,
>
> On Fri, Jun 7, 2024 at 5:10 PM Paul Szczepanek
> wrote:
>>
>> Add a new utility header for compressing pointers. The provided
>> functions can store pointers as 32-bit or 16-bit offsets.
>>
>> T
On 17/06/2024 11:02, David Marchand wrote:
> Hello Paul,
>
> On Fri, Jun 14, 2024 at 12:28 PM David Marchand
> wrote:
>> Even if this library only contains a header, with no tie to other
>> public DPDK API, this library should be optional.
>> If no objection, please work on this change for -rc
Fix the type of offset to use portable uintptr_t instead of uint64_t.
Fixes: 077596a4b077 ("ptr_compress: add pointer compression library")
Reviewed-by: Nick Connolly
Signed-off-by: Paul Szczepanek
---
lib/ptr_compress/rte_ptr_compress.h | 6 +++---
1 file changed, 3 insert
to keep runtime short
* fixed pointer size warning on 32-bit arch
v3:
* added 16 bit versions of compression functions and tests
* added documentation of these new utility functions in the EAL guide
Paul Szczepanek (3):
eal: add pointer compression functions
test: add pointer compress tests to
Documentation added in the EAL guide for the new
utility functions for pointer compression
showing example code and potential usecases
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
---
.../prog_guide/env_abstraction_layer.rst | 142 ++
1 file changed
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
Signed
original numbers to keep runtime short
* fixed pointer size warning on 32-bit arch
v3:
* added 16-bit versions of compression functions and tests
* added documentation of these new utility functions in the EAL guide
v4:
* added unit test
* fix bug in NEON implementation of 32-bit decompress
Paul
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly.
Signed-off-by: Paul Szczepanek
---
app/test/meson.build | 1 +
app/test/test_eal_ptr_compress.c | 108
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
Signed
Documentation added in the EAL guide for the new
utility functions for pointer compression
showing example code and potential usecases
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
---
.../prog_guide/env_abstraction_layer.rst | 142 ++
1 file changed
On 01/11/2023 07:42, Morten Brørup wrote:
From: Paul Szczepanek [mailto:paul.szczepa...@arm.com]
Sent: Tuesday, 31 October 2023 19.11
[...]
In a more realistic mock application running the l3 forwarding dpdk
example that works in pipeline mode this translated into a ~5%
throughput
increase on
error('No suitable armv8 march version found.')
endif
@@ -741,7 +747,7 @@ if update_flags
# apply supported compiler options
if part_number_config.has_key('compiler_options')
foreach flag: part_number_config['compiler_options']
-if cc.has_argument(flag)
+if cc.has_multi_arguments(machine_args + [flag])
machine_args += flag
else
warning('Configuration compiler option ' +
Reviewed-by: Paul Szczepanek
:
* disable NEON and SVE implementation on AARCH32 due to wrong pointer size
Paul Szczepanek (4):
eal: add pointer compression functions
test: add pointer compress tests to ring perf test
docs: add pointer compression to the EAL guide
test: add unit test for ptr compression
.mailmap
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
Signed
Documentation added in the EAL guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
---
.../prog_guide/env_abstraction_layer.rst | 142 ++
1 file changed
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Test compresses and decompresses pointers with various combinations
of memory regions and alignments and verifies the pointers are
recovered correctly.
Signed-off-by: Paul Szczepanek
---
app/test/meson.build | 1 +
app/test/test_eal_ptr_compress.c | 108
The current devtools has a check that errors on any
library (except drivers library which is exempted)
that does not export any symbols. I want to create
a header only library. I want to have the check
ignore libraries which have no `global:` section.
Paul Szczepanek (1):
devtools: allow
If a library has no global section in the version.map
allow it not to have symbols and not report it as an error.
This happens if a library doesn't export any functions
if they're all inline.
Signed-off-by: Paul Szczepanek
---
devtools/check-symbol-maps.sh | 4 +++-
1 file changed, 3
I want to add library which is header only.
Attempting to build such a a library causes errors during checks.
This skips over building libraries while retaining other library
functionality.
The added lines are the first and last 5. The rest is indentation.
Paul Szczepanek (1):
lib: allow
Allow header only libraries.
Signed-off-by: Paul Szczepanek
Reviewed-by: Dhruv Tripathi
---
lib/meson.build | 176 +---
1 file changed, 91 insertions(+), 85 deletions(-)
diff --git a/lib/meson.build b/lib/meson.build
index 4fb01f059b..0fcf3336d1
On 06/03/2024 16:51, David Marchand wrote:
On Wed, Mar 6, 2024 at 5:40 PM Bruce Richardson
wrote:
On Wed, Mar 06, 2024 at 05:14:15PM +0100, David Marchand wrote:
On Wed, Mar 6, 2024 at 3:36 PM Paul Szczepanek wrote:
If a library has no global section in the version.map
allow it not to
On 02/03/2024 10:33, Morten Brørup wrote:
I think that a misconception that arch specific optimizations (such as SIMD
code) required stuff to go into EAL has been prevailing, and this misconception
is a main reason why EAL has become so bloated.
Moving features like pointer compression out of E
:
* disable NEON and SVE implementation on AARCH32 due to wrong pointer size
v6:
* added example usage to commit message of the initial commit
v7:
* rebase to remove clashing mailmap changes
v8:
* put ptr compress into its own library
* add depends-on tag
* remove copyright bumps
* typos
Paul Szczepanek (4
from a base
memory address. Offsets can be stored in fewer bytes (dictated
by the memory region size and alignment of the pointer).
For example: an 8 byte aligned pointer which is part of a 32GB
memory pool can be stored in 4 bytes.
Suggested-by: Honnappa Nagarahalli
Signed-off-by: Paul Szczepanek
. Added more bulk sizes to showcase their effects
on compression. Adjusted loop iteration numbers to take into account
bulk sizes to keep runtime constant (instead of number of operations).
Adjusted old printfs to match new ones which have aligned numbers.
Signed-off-by: Paul Szczepanek
Reviewed-by
Documentation added in the prog guide for the new
utility functions for pointer compression
showing example code and potential usecases.
Signed-off-by: Paul Szczepanek
Reviewed-by: Honnappa Nagarahalli
Reviewed-by: Nathan Brown
---
doc/guides/prog_guide/ptr_compress_lib.rst | 144
1 - 100 of 144 matches
Mail list logo