17 Commits
Author SHA1 Message Date
MadLongTomandPhyxionNL aa7c8be02f feat: Add Native AOT compilation support for LibreHardwareMonitorLib (#2280)
* feat: Add Native AOT compilation support for LibreHardwareMonitorLib

- Replace non-generic Marshal.GetDelegateForFunctionPointer with generic versions
  (NvApi.cs, NvidiaML.cs, OpCode.cs)
- Replace non-generic Marshal.PtrToStructure/SizeOf with generic versions
  (AtiAdlxx.cs, AmdGpu.cs, Ipmi.cs)
- Replace reflection-based Mono.Posix calls with direct Syscall for non-NETFRAMEWORK
  (OpCode.cs)
- Add DynamicallyAccessedMembers annotations for trim-safe generic marshaling
  (MsiCoreLiquidController.cs, WireViewPro2.cs)
- Add IsAotCompatible, IsTrimmable, and AOT/trim analyzers to csproj for net8.0+
- All changes maintain full backward compatibility with net472/netstandard2.0

Tested: dotnet publish with PublishAot=true on net10.0 win-x64 succeeds.
AOT binary correctly enumerates all hardware and sensors without errors.

* feat: Add conditional compilation for .NET 5.0 or greater in various classes

* feat: Add AOT test project and update workflows for AOT compilation

* Drop test project

* NET5_0_OR_GREATER > NET

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2026-04-07 13:38:41 +02:00
Blacktempel 315a767fa0 Fix same memory for different GPUs. (#2232)
* Fix same memory for different GPUs.

* Status check
2026-02-19 16:21:49 +01:00
TimotejandPhyxionNL 6f9ac5aece Add sensors for Astral GPUs (#2168)
* Add sensors for Astral GPUs

* Clean up imports

* Code clean-up

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2026-01-22 10:00:23 +01:00
Blacktempel 24218b0703 Add core voltage for NVIDIA GPU. (#2175) 2026-01-20 17:21:06 +01:00
PhyxionNL 1d7b3223c9 Move more to CsWin32 (#1917) 2025-09-30 16:50:44 +02:00
辉夜andPhyxionNL 3023089017 Changed NvApi lifecycle (#1885)
* Changed NvApi lifecycle

* Changed from public to internal

* Revert unnecessary changes.
Reinitialize() -> Initialize().

* Refactor try-catch blocks for NVML device methods

---------

Co-authored-by: PhyxionNL <7643972+PhyxionNL@users.noreply.github.com>
2025-09-26 10:34:20 +02:00
Corey Shuman 6743fd3bc8 fix support for x86 32-bit process builds (#1144) 2023-08-24 10:26:38 +02:00
PhyxionNL 58cef111a1 Use file-scoped namespaces (#842) 2022-10-09 13:22:57 +02:00
PhyxionNL 3ac329f247 Fix some code analysis issues (#841) 2022-10-09 13:16:31 +02:00
PhyxionNL 47f33f91d9 Update Interop
[ci skip]
2022-06-29 18:17:49 +02:00
Tim Sirmovics 1701eb91b2 Nvidia Hotspot / VRAM temps (#583)
Thanks to @TimSirmovics
2021-10-27 16:34:07 +02:00
PhyxionNL 8c01e4b21b NV API changes (#553)
* NV API changes

Restores parts of https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/commit/eea8558825cc0d5a76aa3e57fcc862b5d6f22100 while implementing the missing bits from the original implementation.

Fixes #524.
2021-09-29 11:34:13 +02:00
PhyxionNL eea8558825 Use NvAPIWrapper (#479)
From https://github.com/falahati/NvAPIWrapper
2021-06-21 19:02:10 +02:00
Phyxion 5bd108167d Restore OHM in copyright statement 2020-02-28 11:39:25 +01:00
Phyxion 9a9d670ca7 Update from upstream 2020-02-26 10:58:56 +01:00
Phyxion d1cff07571 Fixes #196
Switch to bus id instead of adapter index.
2020-01-31 15:21:37 +01:00
Phyxion 73378f7c7b Code style #130 (#132)
This closes #99.
2019-09-23 19:29:10 +02:00