./graphics/libhighway, C++ library for SIMD

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.0.7, Package name: libhighway-1.0.7, Maintainer: pkgsrc-users

Highway is a C++ library for SIMD (Single Instruction, Multiple Data), i.e.
applying the same operation to 'lanes'.

## Why Highway?

- more portable (same source code) than platform-specific intrinsics,
- works on a wider range of compilers than compiler-specific vector extensions,
- more dependable than autovectorization,
- easier to write/maintain than assembly language,
- supports runtime dispatch,
- supports variable-length vector architectures.

## Current status

Supported targets: scalar, SSE4, AVX2, AVX-512, NEON (ARMv7 and v8), WASM SIMD.
Ports to RVV and SVE/SVE2 are in progress.


Master sites:

Filesize: 2007.636 KB

Version history: (Expand)


CVS history: (Expand)


   2024-08-25 08:19:21 by Thomas Klausner | Files touched by this commit (575)
Log message:
*: replace CMAKE_ARGS with CMAKE_CONFIGURE_ARGS
   2024-01-05 12:09:53 by Niclas Rosenvik | Files touched by this commit (4)
Log message:
Update libhighway to version 1.0.7
The reason for updating is that the only
libhighway user (wip/libjxl) needs 1.0.7
to build its latests version 0.9.0.
Due to that nothing in pkgsrc-current
depends on libhighway and the only thing
that needs it needs 1.0.7, bump
BUILDLINK_API_DEPENDS to 1.0.7 .
   2023-08-16 17:20:49 by Nia Alarie | Files touched by this commit (3)
Log message:
libhighway: Option-ize googletest dependency for ABI reasons
(same as other packages, it's a dependency that might require a much
newer compiler)

While here, add missing libatomic dependency
   2022-11-21 19:20:46 by Jonathan Perkin | Files touched by this commit (54)
Log message:
*: Re-apply SunOS linker argument removals.

These are currently duplicated in mk/platform/SunOS.mk but the generic
removals will be removed soon in favour of per-package removals, due to
flags getting leaked into installed files.
   2022-10-07 13:15:54 by Niclas Rosenvik | Files touched by this commit (4)
Log message:
Update libhighway to version 1.0.1

Pkgsrc changes:
Build shared libs.
Use gcc 8 and over to fix build.
Include devel/googletest in
buildlink3.mk since one of the
installed header files include
gtest/gtest.h .

Changes from changelog:

* Add Eq128, i64 Mul, unsigned->float ConvertTo
* Faster sort for few unique keys, more robust pivot selection
* Fix: floating-point generator for sort tests, Min/MaxOfLanes for i16
* Fix: avoid always_inline in debug, link atomic
* GCC warnings: string.h, maybe-uninitialized, ignored-attributes
* GCC warnings: preprocessor int overflow, spurious use-after-free/overflow
* Doc: <=HWY_AVX3, Full32/64/128, how to use generic-inl
* ABI change: 64-bit target values, more room for expansion
* Add CompressBlocksNot, CompressNot, Lt128Upper, Min/Max128Upper, TruncateTo
* Add HWY_SVE2_128 target
* Sort speedups especially for 128-bit
* Documentation clarifications
* Faster NEON CountTrue/FindFirstTrue/AllFalse/AllTrue
* Improved SVE codegen
* Fix u16x8 ConcatEven/Odd, SSSE3 i64 Lt
* MSVC 2017 workarounds
* Support for runtime dispatch on Arm/GCC/Linux
   2022-07-17 21:32:46 by Thomas Klausner | Files touched by this commit (5)
Log message:
graphics/libhighway: import libhighway-0.17.0

Renamed to libhighway due to textproc/highway.

Highway is a C++ library for SIMD (Single Instruction, Multiple Data), i.e.
applying the same operation to 'lanes'.

## Why Highway?

- more portable (same source code) than platform-specific intrinsics,
- works on a wider range of compilers than compiler-specific vector extensions,
- more dependable than autovectorization,
- easier to write/maintain than assembly language,
- supports runtime dispatch,
- supports variable-length vector architectures.

## Current status

Supported targets: scalar, SSE4, AVX2, AVX-512, NEON (ARMv7 and v8), WASM SIMD.
Ports to RVV and SVE/SVE2 are in progress.