Skip to content

Commit 22c37ee

Browse files
...
1 parent 530bc67 commit 22c37ee

File tree

10 files changed

+1093
-62
lines changed

10 files changed

+1093
-62
lines changed

Amplifier.Net/Amplifier.csproj

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,18 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>netstandard2.0</TargetFrameworks>
4+
<TargetFrameworks>net46;netstandard2.0</TargetFrameworks>
55
<AssemblyName>Amplifier</AssemblyName>
66
<RootNamespace>Amplifier</RootNamespace>
7+
<Version>0.4.0</Version>
8+
<Authors>Deepak Battini</Authors>
9+
<Company>Tech Quantum</Company>
10+
<Description>Amplifier allows .NET developers to easily run complex applications with intensive mathematical computation on Intel CPU/GPU, NVIDIA, AMD without writing any additional C kernel code. Write your function in .NET and Amplifier will take care of running it on your favorite hardware.</Description>
11+
<PackageLicenseFile>README.md</PackageLicenseFile>
12+
<PackageProjectUrl>https://github.com/tech-quantum/Amplifier.NET</PackageProjectUrl>
13+
<RepositoryUrl>https://github.com/tech-quantum/Amplifier.NET</RepositoryUrl>
14+
<RepositoryType>git</RepositoryType>
15+
<PackageTags>OpenCL, Kernel, .NET GPU, CSharp GPU</PackageTags>
716
</PropertyGroup>
817

918
<PropertyGroup Condition="'$(Configuration)|$(TargetFramework)|$(Platform)'=='Release|net46|AnyCPU'">
@@ -16,7 +25,7 @@
1625
</PropertyGroup>
1726

1827
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
19-
<DefineConstants>TRACE;DEBUG;NETSTANDARD;NETSTANDARD2_0;OSX</DefineConstants>
28+
<DefineConstants>TRACE;DEBUG;NETSTANDARD;NETSTANDARD2_0</DefineConstants>
2029
</PropertyGroup>
2130
<ItemGroup>
2231
<PackageReference Include="ICSharpCode.Decompiler" Version="4.0.0.4521" />
@@ -26,5 +35,9 @@
2635
<None Update="Amplifier.dll.config">
2736
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
2837
</None>
38+
<None Include="..\README.md">
39+
<Pack>True</Pack>
40+
<PackagePath></PackagePath>
41+
</None>
2942
</ItemGroup>
3043
</Project>
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Text;
4+
5+
namespace Amplifier.OpenCL
6+
{
7+
public struct size_t
8+
{
9+
public static implicit operator size_t(uint d)
10+
{
11+
return new size_t();
12+
}
13+
}
14+
15+
public struct ptrdiff_t
16+
{
17+
public static implicit operator ptrdiff_t(uint d)
18+
{
19+
return new ptrdiff_t();
20+
}
21+
}
22+
23+
public struct intptr_t
24+
{
25+
public static implicit operator intptr_t(uint d)
26+
{
27+
return new intptr_t();
28+
}
29+
}
30+
31+
public struct uintptr_t
32+
{
33+
public static implicit operator uintptr_t(uint d)
34+
{
35+
return new uintptr_t();
36+
}
37+
}
38+
}
Lines changed: 292 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,292 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using System.Dynamic;
4+
using System.Text;
5+
6+
namespace Amplifier.OpenCL
7+
{
8+
public interface IVecDType
9+
{
10+
11+
}
12+
13+
public struct uint2 : IVecDType
14+
{
15+
public static implicit operator uint2((uint, uint) d)
16+
{
17+
return new uint2();
18+
}
19+
}
20+
21+
public struct uint3 : IVecDType
22+
{
23+
public static implicit operator uint3((uint, uint, uint) d)
24+
{
25+
return new uint3();
26+
}
27+
}
28+
29+
public struct uint4
30+
{
31+
public static implicit operator uint4((uint, uint, uint, uint) d)
32+
{
33+
return new uint4();
34+
}
35+
}
36+
37+
public struct uint8
38+
{
39+
public static implicit operator uint8((uint, uint, uint, uint, uint, uint, uint, uint) d)
40+
{
41+
return new uint8();
42+
}
43+
}
44+
45+
public struct uint16
46+
{
47+
public static implicit operator uint16((uint, uint, uint, uint, uint, uint, uint, uint, uint, uint, uint, uint, uint, uint, uint, uint) d)
48+
{
49+
return new uint16();
50+
}
51+
}
52+
53+
public struct int2
54+
{
55+
public static implicit operator int2((uint, uint) d)
56+
{
57+
return new int2();
58+
}
59+
}
60+
61+
public struct int3
62+
{
63+
public static implicit operator int3((int, int, int) d)
64+
{
65+
return new int3();
66+
}
67+
}
68+
69+
public struct int4
70+
{
71+
public static implicit operator int4((int, int, int, int) d)
72+
{
73+
return new int4();
74+
}
75+
}
76+
77+
public struct int8
78+
{
79+
public static implicit operator int8((int, int, int, int, int, int, int, int) d)
80+
{
81+
return new int8();
82+
}
83+
}
84+
85+
public struct int16
86+
{
87+
public static implicit operator int16((int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int) d)
88+
{
89+
return new int16();
90+
}
91+
}
92+
93+
public struct long2
94+
{
95+
public static implicit operator long2((long, long) d)
96+
{
97+
return new long2();
98+
}
99+
}
100+
101+
public struct long3
102+
{
103+
public static implicit operator long3((long, long, long) d)
104+
{
105+
return new long3();
106+
}
107+
}
108+
109+
public struct long4
110+
{
111+
public static implicit operator long4((long, long, long, long) d)
112+
{
113+
return new long4();
114+
}
115+
}
116+
117+
public struct long8
118+
{
119+
public static implicit operator long8((long, long, long, long, long, long, long, long) d)
120+
{
121+
return new long8();
122+
}
123+
}
124+
125+
public struct long16
126+
{
127+
public static implicit operator long16((long, long, long, long, long, long, long, long, long, long, long, long, long, long, long, long) d)
128+
{
129+
return new long16();
130+
}
131+
}
132+
133+
public struct ulong2
134+
{
135+
public static implicit operator ulong2((ulong, ulong) d)
136+
{
137+
return new ulong2();
138+
}
139+
}
140+
141+
public struct ulong3
142+
{
143+
public static implicit operator ulong3((ulong, ulong, ulong) d)
144+
{
145+
return new ulong3();
146+
}
147+
}
148+
149+
public struct ulong4
150+
{
151+
public static implicit operator ulong4((ulong, ulong, ulong, ulong) d)
152+
{
153+
return new ulong4();
154+
}
155+
}
156+
157+
public struct ulong8
158+
{
159+
public static implicit operator ulong8((ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong) d)
160+
{
161+
return new ulong8();
162+
}
163+
}
164+
165+
public struct ulong16
166+
{
167+
public static implicit operator ulong16((ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong, ulong) d)
168+
{
169+
return new ulong16();
170+
}
171+
}
172+
173+
public struct float2
174+
{
175+
public static implicit operator float2((float, float) d)
176+
{
177+
return new float2();
178+
}
179+
}
180+
181+
public struct float3
182+
{
183+
public static implicit operator float3((float, float, float) d)
184+
{
185+
return new float3();
186+
}
187+
}
188+
189+
public struct float4
190+
{
191+
public static implicit operator float4((float, float, float, float) d)
192+
{
193+
return new float4();
194+
}
195+
}
196+
197+
public struct float8
198+
{
199+
public static implicit operator float8((float, float, float, float, float, float, float, float) d)
200+
{
201+
return new float8();
202+
}
203+
}
204+
205+
public struct float16
206+
{
207+
public static implicit operator float16((float, float, float, float, float, float, float, float, float, float, float, float, float, float, float, float) d)
208+
{
209+
return new float16();
210+
}
211+
}
212+
213+
public struct double2
214+
{
215+
public static implicit operator double2((double, double) d)
216+
{
217+
return new double2();
218+
}
219+
}
220+
221+
public struct double3
222+
{
223+
public static implicit operator double3((double, double, double) d)
224+
{
225+
return new double3();
226+
}
227+
}
228+
229+
public struct double4
230+
{
231+
public static implicit operator double4((double, double, double, double) d)
232+
{
233+
return new double4();
234+
}
235+
}
236+
237+
public struct double8
238+
{
239+
public static implicit operator double8((double, double, double, double, double, double, double, double) d)
240+
{
241+
return new double8();
242+
}
243+
}
244+
245+
public struct double16
246+
{
247+
public static implicit operator double16((double, double, double, double, double, double, double, double, double, double, double, double, double, double, double, double) d)
248+
{
249+
return new double16();
250+
}
251+
}
252+
253+
public struct short2
254+
{
255+
public static implicit operator short2((short, short) d)
256+
{
257+
return new short2();
258+
}
259+
}
260+
261+
public struct short3
262+
{
263+
public static implicit operator short3((short, short, short) d)
264+
{
265+
return new short3();
266+
}
267+
}
268+
269+
public struct short4
270+
{
271+
public static implicit operator short4((short, short, short, short) d)
272+
{
273+
return new short4();
274+
}
275+
}
276+
277+
public struct short8
278+
{
279+
public static implicit operator short8((short, short, short, short, short, short, short, short) d)
280+
{
281+
return new short8();
282+
}
283+
}
284+
285+
public struct short16
286+
{
287+
public static implicit operator short16((short, short, short, short, short, short, short, short, short, short, short, short, short, short, short, short) d)
288+
{
289+
return new short16();
290+
}
291+
}
292+
}

0 commit comments

Comments
 (0)