Skip to content

Commit b4ff602

Browse files
committed
Support Apple A Pro GPU
1 parent d5d960a commit b4ff602

3 files changed

Lines changed: 30 additions & 5 deletions

File tree

Packages/MobileSupportQualityTuner/Runtime/Scripts/GpuSeriesEnums.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@ public enum GpuMinorSeries
7373
/// </summary>
7474
AppleM = 12,
7575

76+
/// <summary>
77+
/// Apple A-series Pro
78+
/// </summary>
79+
AppleAPro = 13,
80+
7681
/// <summary>
7782
/// Qualcomm Adreno 100 series
7883
/// </summary>
@@ -183,6 +188,7 @@ public class GpuSeriesEnumeration : IComparable
183188
public static readonly GpuSeriesEnumeration AppleAny = new(GpuMajorSeries.Apple, GpuMinorSeries.Unknown);
184189
public static readonly GpuSeriesEnumeration AppleA = new(GpuMajorSeries.Apple, GpuMinorSeries.AppleA);
185190
public static readonly GpuSeriesEnumeration AppleM = new(GpuMajorSeries.Apple, GpuMinorSeries.AppleM);
191+
public static readonly GpuSeriesEnumeration AppleAPro = new(GpuMajorSeries.Apple, GpuMinorSeries.AppleAPro);
186192

187193
// Adreno
188194
public static readonly GpuSeriesEnumeration AdrenoAny = new(GpuMajorSeries.Adreno, GpuMinorSeries.Unknown);

Packages/MobileSupportQualityTuner/Runtime/Scripts/HardwareInfo.iOS.cs

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,17 @@ public static void SetIosHardwareStats(HardwareStats stats)
2424
public static GpuMinorSeries ParseGpuMinorSeries(string gpuName)
2525
{
2626
// parse GPU series by StartsWith
27-
return gpuName switch
27+
if (gpuName.StartsWith("Apple A", StringComparison.Ordinal))
2828
{
29-
{ } when gpuName.StartsWith("Apple A", StringComparison.Ordinal) => GpuMinorSeries.AppleA,
30-
{ } when gpuName.StartsWith("Apple M", StringComparison.Ordinal) => GpuMinorSeries.AppleM,
31-
_ => GpuMinorSeries.Unknown
32-
};
29+
return gpuName.Contains("Pro") ? GpuMinorSeries.AppleAPro : GpuMinorSeries.AppleA;
30+
}
31+
32+
if (gpuName.StartsWith("Apple M", StringComparison.Ordinal))
33+
{
34+
return GpuMinorSeries.AppleM;
35+
}
36+
37+
return GpuMinorSeries.Unknown;
3338
}
3439

3540
public static int ParseAppleGpuSeriesNumber(string gpuName)

Packages/MobileSupportQualityTuner/Tests/Editor/Scripts/HardwareInfo.iOSTests.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,20 @@ namespace MobileSupport.QualityTuner.Editor.Tests
88
{
99
public class HardwareInfoIosTests
1010
{
11+
[TestCase("Apple A8 GPU", ExpectedResult = GpuMinorSeries.AppleA)]
12+
[TestCase("Apple A8X GPU", ExpectedResult = GpuMinorSeries.AppleA)]
13+
[TestCase("Apple A10 GPU", ExpectedResult = GpuMinorSeries.AppleA)]
14+
[TestCase("Apple A10X GPU", ExpectedResult = GpuMinorSeries.AppleA)]
15+
[TestCase("Apple A12Z GPU", ExpectedResult = GpuMinorSeries.AppleA)]
16+
[TestCase("Apple A17 Pro GPU", ExpectedResult = GpuMinorSeries.AppleAPro)]
17+
[TestCase("Apple A15 Pro GPU", ExpectedResult = GpuMinorSeries.AppleAPro)]
18+
[TestCase("Apple M1 GPU", ExpectedResult = GpuMinorSeries.AppleM)]
19+
[TestCase("Apple M1", ExpectedResult = GpuMinorSeries.AppleM)]
20+
public GpuMinorSeries HardwareInfoIos_ParseGpuMinorSeries_Tests(string gpuName)
21+
{
22+
return HardwareInfoIos.ParseGpuMinorSeries(gpuName);
23+
}
24+
1125
[TestCase("Apple A8 GPU", ExpectedResult = 8)]
1226
[TestCase("Apple A8X GPU", ExpectedResult = 8)]
1327
[TestCase("Apple A10 GPU", ExpectedResult = 10)]

0 commit comments

Comments
 (0)