diff --git a/src/renderer/components/Computer.tsx b/src/renderer/components/Computer.tsx
index 34cedd94..920b5aad 100644
--- a/src/renderer/components/Computer.tsx
+++ b/src/renderer/components/Computer.tsx
@@ -270,11 +270,15 @@ export default function Computer() {
value={server.gpu?.length === 0 ? '❌' : '✅'}
/>
{' '}
))}
-
- {server?.device == 'cuda' && }
-
+ {server?.device === 'cuda' && (
+
+ {server?.device_type === 'nvidia' ? (
+
+ ) : server?.device_type === 'amd' ? (
+
+ ) : null}
+
+ )}
diff --git a/src/renderer/components/Plugins/LocalPlugins.tsx b/src/renderer/components/Plugins/LocalPlugins.tsx
index e8f57ff0..3ea59c34 100644
--- a/src/renderer/components/Plugins/LocalPlugins.tsx
+++ b/src/renderer/components/Plugins/LocalPlugins.tsx
@@ -33,7 +33,7 @@ export default function LocalPlugins({
fetcher,
);
- const device = serverInfo?.device;
+ const device = serverInfo?.device_type;
if (error) return 'Failed to fetch plugins for the selected experiment. Please verify the experiment ID and server availability.';
if (isLoading) return ;
diff --git a/src/renderer/components/Plugins/PluginCard.tsx b/src/renderer/components/Plugins/PluginCard.tsx
index db5374c6..10dcf163 100644
--- a/src/renderer/components/Plugins/PluginCard.tsx
+++ b/src/renderer/components/Plugins/PluginCard.tsx
@@ -9,8 +9,6 @@ import { Box, ButtonGroup, Chip, CircularProgress, Stack } from '@mui/joy';
import { Link } from 'react-router-dom';
import { useState } from 'react';
-import TinyMLXLogo from '../Shared/TinyMLXLogo';
-import TinyNVIDIALogo from '../Shared/TinyNVIDIALogo';
import { colorArray, mixColorWithBackground } from 'renderer/lib/utils';
import ShowArchitectures from '../Shared/ListArchitectures';
@@ -74,6 +72,8 @@ export default function PluginCard({
isCompatible =
pluginArchitectures.includes('cuda') ||
pluginArchitectures.includes('cpu');
+ } else if (machineType === 'amd') {
+ isCompatible = pluginArchitectures.includes('amd');
} else {
isCompatible = pluginArchitectures.includes('cpu');
}
diff --git a/src/renderer/components/Plugins/PluginGallery.tsx b/src/renderer/components/Plugins/PluginGallery.tsx
index 9c922671..96ad3f37 100644
--- a/src/renderer/components/Plugins/PluginGallery.tsx
+++ b/src/renderer/components/Plugins/PluginGallery.tsx
@@ -48,7 +48,7 @@ export default function PluginGallery({
fetchShowExperimental();
}, []);
- const device = serverInfo?.device;
+ const device = serverInfo?.device_type;
const renderFilters = () => (
@@ -94,6 +94,9 @@ export default function PluginGallery({
plugin.supported_hardware_architectures.includes('cpu')
);
}
+ if (machineType === 'amd') {
+ return plugin.supported_hardware_architectures.includes('amd');
+ }
return true; // Default to compatible for unknown machine types
};
diff --git a/src/renderer/components/Shared/ListArchitectures.tsx b/src/renderer/components/Shared/ListArchitectures.tsx
index 2eb1ecec..da67d6d4 100644
--- a/src/renderer/components/Shared/ListArchitectures.tsx
+++ b/src/renderer/components/Shared/ListArchitectures.tsx
@@ -1,6 +1,7 @@
import { Box, Chip } from '@mui/joy';
import TinyMLXLogo from './TinyMLXLogo';
import TinyNVIDIALogo from './TinyNVIDIALogo';
+import TinyAMDLogo from './TinyAMDLogo';
function mapArchitectureToIcon(arch) {
switch (arch) {
@@ -8,6 +9,8 @@ function mapArchitectureToIcon(arch) {
return ;
case 'mlx':
return ;
+ case 'amd':
+ return ;
default:
return (
diff --git a/src/renderer/components/Shared/TinyAMDLogo.tsx b/src/renderer/components/Shared/TinyAMDLogo.tsx
new file mode 100644
index 00000000..982dce90
--- /dev/null
+++ b/src/renderer/components/Shared/TinyAMDLogo.tsx
@@ -0,0 +1,14 @@
+export default function TinyAMDLogo() {
+ return (
+
+ );
+}
diff --git a/src/renderer/components/Shared/TinyNVIDIALogo.tsx b/src/renderer/components/Shared/TinyNVIDIALogo.tsx
index 05e3dc63..20cde373 100644
--- a/src/renderer/components/Shared/TinyNVIDIALogo.tsx
+++ b/src/renderer/components/Shared/TinyNVIDIALogo.tsx
@@ -1,5 +1,15 @@
-export default function TinyMLXLogo() {
+export default function TinyNVIDIALogo() {
return (
-
+
);
}