Browse Source

Merge feat: add detection template for cuda and avx. #268

Just merge cuda and avx detection and change layout.
tags/v0.8.0
SignalRT 2 years ago
parent
commit
b4b3ea9d99
11 changed files with 26 additions and 26 deletions
  1. +18
    -18
      LLama/LLamaSharp.Runtime.targets
  2. +8
    -8
      LLama/Native/NativeApi.cs
  3. +0
    -0
      LLama/runtimes/linux-x64/libllama-cuda11.so
  4. +0
    -0
      LLama/runtimes/linux-x64/libllama-cuda12.so
  5. +0
    -0
      LLama/runtimes/linux-x64/libllama.so
  6. +0
    -0
      LLama/runtimes/osx-arm64/ggml-metal.metal
  7. +0
    -0
      LLama/runtimes/osx-arm64/libllama.dylib
  8. +0
    -0
      LLama/runtimes/osx-x64/libllama.dylib
  9. +0
    -0
      LLama/runtimes/win-x64/libllama-cuda11.dll
  10. +0
    -0
      LLama/runtimes/win-x64/libllama-cuda12.dll
  11. +0
    -0
      LLama/runtimes/win-x64/libllama.dll

+ 18
- 18
LLama/LLamaSharp.Runtime.targets View File

@@ -3,41 +3,41 @@
<IncludeBuiltInRuntimes Condition="'$(IncludeBuiltInRuntimes)' == ''">true</IncludeBuiltInRuntimes>
</PropertyGroup>
<ItemGroup Condition="'$(IncludeBuiltInRuntimes)' == 'true'">
<None Include="$(MSBuildThisFileDirectory)runtimes/libllama.dll">
<None Include="$(MSBuildThisFileDirectory)runtimes/win-x64/libllama.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>libllama.dll</Link>
<Link>runtimes/win-x64/libllama.dll</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/libllama-cuda11.dll">
<None Include="$(MSBuildThisFileDirectory)runtimes/win-x64/libllama-cuda11.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>libllama-cuda11.dll</Link>
<Link>runtimes/win-x64/libllama-cuda11.dll</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/libllama-cuda12.dll">
<None Include="$(MSBuildThisFileDirectory)runtimes/win-x64/libllama-cuda12.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>libllama-cuda12.dll</Link>
<Link>runtimes/win-x64/libllama-cuda12.dll</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/libllama.so">
<None Include="$(MSBuildThisFileDirectory)runtimes/linux-x64/libllama.so">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>libllama.so</Link>
<Link>runtimes/linux-x64/libllama.so</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/libllama-cuda11.so">
<None Include="$(MSBuildThisFileDirectory)runtimes/linux-x64/libllama-cuda11.so">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>libllama-cuda11.so</Link>
<Link>runtimes/linux-x64/libllama-cuda11.so</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/libllama-cuda12.so">
<None Include="$(MSBuildThisFileDirectory)runtimes/linux-x64/libllama-cuda12.so">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>libllama-cuda12.so</Link>
<Link>runtimes/linux-x64/libllama-cuda12.so</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/macos-arm64/libllama.dylib">
<None Include="$(MSBuildThisFileDirectory)runtimes/osx-arm64/libllama.dylib">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>runtimes/macos-arm64/libllama.dylib</Link>
<Link>runtimes/osx-arm64/libllama.dylib</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/macos-arm64/ggml-metal.metal">
<None Include="$(MSBuildThisFileDirectory)runtimes/osx-arm64/ggml-metal.metal">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>runtimes/macos-arm64/ggml-metal.metal</Link>
<Link>runtimes/osx-arm64/ggml-metal.metal</Link>
</None>
<None Include="$(MSBuildThisFileDirectory)runtimes/macos-x86_64/libllama.dylib">
<None Include="$(MSBuildThisFileDirectory)runtimes/osx-x64/libllama.dylib">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<Link>runtimes/macos-x86_64/libllama.dylib</Link>
<Link>runtimes/osx-x64/libllama.dylib</Link>
</None>
</ItemGroup>
</Project>

+ 8
- 8
LLama/Native/NativeApi.cs View File

@@ -110,15 +110,15 @@ namespace LLama.Native
var cudaVersion = GetCudaVersion();
if(cudaVersion == 11)
{
libraryPath = $"runtimes/win-x64/native/libllama-cuda11{avxFlag}.dll";
libraryPath = $"runtimes/win-x64/libllama-cuda11{avxFlag}.dll";
}
else if (cudaVersion == 12)
{
libraryPath = $"runtimes/win-x64/native/libllama-cuda12{avxFlag}.dll";
libraryPath = $"runtimes/win-x64/libllama-cuda12{avxFlag}.dll";
}
else if(cudaVersion == -1) // cpu version
{
libraryPath = $"runtimes/win-x64/native/libllama{avxFlag}.dll";
libraryPath = $"runtimes/win-x64/libllama{avxFlag}.dll";
}
else
{
@@ -132,15 +132,15 @@ namespace LLama.Native
var cudaVersion = GetCudaVersion();
if (cudaVersion == 11)
{
libraryPath = $"runtimes/linux-x64/native/libllama-cuda11{avxFlag}.so";
libraryPath = $"runtimes/linux-x64/libllama-cuda11{avxFlag}.so";
}
else if (cudaVersion == 12)
{
libraryPath = $"runtimes/linux-x64/native/libllama-cuda12{avxFlag}.so";
libraryPath = $"runtimes/linux-x64/libllama-cuda12{avxFlag}.so";
}
else if (cudaVersion == -1) // cpu version
{
libraryPath = $"runtimes/linux-x64/native/libllama{avxFlag}.so";
libraryPath = $"runtimes/linux-x64/libllama{avxFlag}.so";
}
else
{
@@ -151,11 +151,11 @@ namespace LLama.Native
{
if (System.Runtime.Intrinsics.Arm.ArmBase.Arm64.IsSupported)
{
libraryPath = $"runtimes/osx-arm64/native/libllama.dylib";
libraryPath = $"runtimes/osx-arm64/libllama.dylib";
}
else
{
libraryPath = $"runtimes/osx-x64/native/libllama.dylib";
libraryPath = $"runtimes/osx-x86_64/libllama.dylib";
}
}



LLama/runtimes/libllama-cuda11.so → LLama/runtimes/linux-x64/libllama-cuda11.so View File


LLama/runtimes/libllama-cuda12.so → LLama/runtimes/linux-x64/libllama-cuda12.so View File


LLama/runtimes/libllama.so → LLama/runtimes/linux-x64/libllama.so View File


LLama/runtimes/macos-arm64/ggml-metal.metal → LLama/runtimes/osx-arm64/ggml-metal.metal View File


LLama/runtimes/macos-arm64/libllama.dylib → LLama/runtimes/osx-arm64/libllama.dylib View File


LLama/runtimes/macos-x86_64/libllama.dylib → LLama/runtimes/osx-x64/libllama.dylib View File


LLama/runtimes/libllama-cuda11.dll → LLama/runtimes/win-x64/libllama-cuda11.dll View File


LLama/runtimes/libllama-cuda12.dll → LLama/runtimes/win-x64/libllama-cuda12.dll View File


LLama/runtimes/libllama.dll → LLama/runtimes/win-x64/libllama.dll View File


Loading…
Cancel
Save