AxionLab-official commited on
Commit
9872885
Β·
verified Β·
1 Parent(s): cf366b8

Create supra-50m-onan-athlon.html

Browse files
Files changed (1) hide show
  1. supra-50m-onan-athlon.html +343 -0
supra-50m-onan-athlon.html ADDED
@@ -0,0 +1,343 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Supra-50M on a 1999 Athlon | SupraLabs Blog</title>
7
+ <style>
8
+ :root {
9
+ --bg: #0f0f0f;
10
+ --surface: #1a1a1a;
11
+ --border: #333;
12
+ --text: #e0e0e0;
13
+ --accent: #536bfe;
14
+ --muted: #888;
15
+ --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
16
+ }
17
+ * { margin: 0; padding: 0; box-sizing: border-box; }
18
+ body {
19
+ background-color: var(--bg);
20
+ color: var(--text);
21
+ font-family: 'Inter', -apple-system, sans-serif;
22
+ line-height: 1.6;
23
+ padding: 2rem;
24
+ }
25
+ code, pre, .mono { font-family: var(--font-mono); }
26
+ .container { max-width: 900px; margin: 0 auto; }
27
+
28
+ header {
29
+ border-bottom: 2px solid var(--border);
30
+ padding-bottom: 2rem;
31
+ margin-bottom: 3rem;
32
+ display: flex;
33
+ justify-content: space-between;
34
+ align-items: flex-end;
35
+ }
36
+ .logo-area h1 {
37
+ font-size: 1.2rem;
38
+ text-transform: uppercase;
39
+ letter-spacing: 2px;
40
+ color: var(--accent);
41
+ line-height: 1;
42
+ display: flex;
43
+ align-items: center;
44
+ gap: 10px;
45
+ }
46
+ .logo-area a { text-decoration: none; color: inherit; }
47
+ .logo-area {
48
+ display: flex;
49
+ align-items: center;
50
+ gap: 10px;
51
+ font-weight: bold;
52
+ font-size: 1.2rem;
53
+ }
54
+ nav a {
55
+ color: var(--text);
56
+ text-decoration: none;
57
+ margin-left: 1.5rem;
58
+ font-size: 0.9rem;
59
+ border-bottom: 1px solid transparent;
60
+ }
61
+ nav a:hover { border-bottom: 1px solid var(--accent); }
62
+
63
+ .post-header { margin-bottom: 3rem; }
64
+ .post-header h2 {
65
+ font-size: 3rem;
66
+ line-height: 1.1;
67
+ margin-bottom: 1rem;
68
+ font-weight: 800;
69
+ }
70
+ .post-meta {
71
+ font-family: var(--font-mono);
72
+ color: var(--accent);
73
+ font-size: 0.9rem;
74
+ margin-bottom: 2rem;
75
+ }
76
+ .post-content {
77
+ background: var(--surface);
78
+ border: 1px solid var(--border);
79
+ padding: 3rem;
80
+ margin-bottom: 4rem;
81
+ }
82
+ .post-content h2 {
83
+ font-size: 1.8rem;
84
+ margin: 2.5rem 0 1rem 0;
85
+ color: var(--accent);
86
+ }
87
+ .post-content h2:first-child { margin-top: 0; }
88
+ .post-content p {
89
+ margin-bottom: 1.5rem;
90
+ font-size: 1.1rem;
91
+ color: var(--text);
92
+ }
93
+ .post-content ul {
94
+ margin-bottom: 1.5rem;
95
+ padding-left: 1.5rem;
96
+ }
97
+ .post-content li { margin-bottom: 0.5rem; font-size: 1.1rem; }
98
+ .post-content strong { color: #fff; }
99
+
100
+ .post-content code {
101
+ background: #111;
102
+ border: 1px solid var(--border);
103
+ padding: 2px 6px;
104
+ border-radius: 3px;
105
+ font-size: 0.95em;
106
+ color: var(--accent);
107
+ }
108
+
109
+ .callout {
110
+ border-left: 3px solid var(--accent);
111
+ background: #111;
112
+ padding: 1rem 1.5rem;
113
+ margin: 2rem 0;
114
+ font-family: var(--font-mono);
115
+ font-size: 0.95rem;
116
+ color: #ccc;
117
+ }
118
+ .callout span {
119
+ display: block;
120
+ color: var(--muted);
121
+ font-size: 0.8rem;
122
+ margin-bottom: 0.4rem;
123
+ }
124
+
125
+ /* Screenshot box */
126
+ .screenshot-box {
127
+ border: 1px solid var(--border);
128
+ background: #111;
129
+ padding: 0;
130
+ margin: 2rem 0;
131
+ overflow: hidden;
132
+ }
133
+ .screenshot-box .screenshot-label {
134
+ font-family: var(--font-mono);
135
+ font-size: 0.75rem;
136
+ color: var(--muted);
137
+ padding: 0.6rem 1rem;
138
+ border-bottom: 1px solid var(--border);
139
+ background: #0d0d0d;
140
+ }
141
+ .screenshot-box img {
142
+ width: 100%;
143
+ display: block;
144
+ }
145
+
146
+ /* Reddit quote */
147
+ .reddit-quote {
148
+ border-left: 3px solid #ff4500;
149
+ background: #111;
150
+ padding: 1.2rem 1.5rem;
151
+ margin: 2rem 0;
152
+ font-size: 1rem;
153
+ color: #ccc;
154
+ font-style: italic;
155
+ line-height: 1.7;
156
+ }
157
+ .reddit-quote .reddit-meta {
158
+ font-family: var(--font-mono);
159
+ font-size: 0.72rem;
160
+ color: #ff4500;
161
+ font-style: normal;
162
+ margin-bottom: 0.6rem;
163
+ display: block;
164
+ }
165
+
166
+ /* Output example */
167
+ .output-example {
168
+ border: 1px solid var(--border);
169
+ background: #111;
170
+ padding: 1.5rem;
171
+ margin: 1.5rem 0;
172
+ }
173
+ .output-example .prompt-label {
174
+ font-family: var(--font-mono);
175
+ font-size: 0.75rem;
176
+ color: var(--accent);
177
+ margin-bottom: 0.4rem;
178
+ }
179
+ .output-example .prompt-text {
180
+ font-weight: 700;
181
+ color: #fff;
182
+ margin-bottom: 1rem;
183
+ font-size: 1rem;
184
+ }
185
+ .output-example .output-label {
186
+ font-family: var(--font-mono);
187
+ font-size: 0.75rem;
188
+ color: var(--muted);
189
+ margin-bottom: 0.4rem;
190
+ }
191
+ .output-example .output-text {
192
+ color: var(--text);
193
+ font-size: 0.95rem;
194
+ font-style: italic;
195
+ line-height: 1.7;
196
+ }
197
+
198
+ .tags { display: flex; gap: 0.5rem; margin-top: 2rem; flex-wrap: wrap; }
199
+ .tag {
200
+ font-family: var(--font-mono);
201
+ font-size: 0.7rem;
202
+ padding: 2px 8px;
203
+ border: 1px solid var(--border);
204
+ border-radius: 4px;
205
+ color: var(--muted);
206
+ }
207
+
208
+ footer {
209
+ margin-top: 6rem;
210
+ padding-bottom: 2rem;
211
+ font-size: 0.8rem;
212
+ color: var(--muted);
213
+ text-align: center;
214
+ }
215
+
216
+ @media (max-width: 600px) {
217
+ .post-header h2 { font-size: 2rem; }
218
+ .post-content { padding: 1.5rem; }
219
+ header { flex-direction: column; align-items: flex-start; gap: 1rem; }
220
+ nav a { margin-left: 0; margin-right: 1rem; }
221
+ }
222
+ </style>
223
+ </head>
224
+ <body>
225
+
226
+ <div class="container">
227
+ <header>
228
+ <div class="logo-area" style="font-size: 1.5em;">
229
+ <a href="./index.html"><h1><img src="./image.png" style="height: 2em"> SupraLabs_</h1></a>
230
+ </div>
231
+ <nav>
232
+ <a href="./index.html#news">News</a>
233
+ <a href="https://huggingface.co/SupraLabs" target="blank">HuggingFace</a>
234
+ <a href="./index.html#hardware">Hardware</a>
235
+ </nav>
236
+ </header>
237
+
238
+ <article>
239
+ <div class="post-header">
240
+ <div class="post-meta">// 2026-05-24 | Community</div>
241
+ <h2>Someone ran Supra-50M<br>on a 1999 Athlon.<br>It WORKED.</h2>
242
+ </div>
243
+
244
+ <div class="post-content">
245
+
246
+ <p>We did not expect this. A few days after releasing Supra-50M, a user on r/LocalLLM posted something that genuinely made us stop and stare. They ran <strong>Supra-50M Instruct on a 26-year-old AMD Athlon clocked at 1 GHz</strong>, a machine they keep around for retro Windows 9x games, and got real, coherent output out of it at <strong>1.3 tokens per second</strong>.</p>
247
+
248
+ <div class="reddit-quote">
249
+ <span class="reddit-meta">// u/tux on r/LocalLLM</span>
250
+ "I see your Strix Halo and I'll give you a vintage Athlon [1 GHz] (Supra-50M). As a fun experiment, I decided to try running the recently released Supra-50M on a 26-year-old machine I keep for retro Windows 9.X games. Although the model was somewhat silly and inconsistent, the performance wasn't bad, reaching around 1.3 tok/s with CPU inference alone."
251
+ </div>
252
+
253
+ <h2>The hardware</h2>
254
+ <p>This is not a low-end 2020 machine. This is a <strong>1999 AMD Athlon running at 1007 MHz</strong> with a single core, no hyperthreading, 256 KB cache, and crucially, <strong>no SSE2 instruction set support</strong>. SSE2 is the baseline that virtually every modern AI inference library assumes. The CPU predates it entirely.</p>
255
+
256
+ <div class="callout">
257
+ <span>// /proc/cpuinfo β€” the machine that ran supra-50m</span>
258
+ vendor_id &nbsp;&nbsp;β†’ AuthenticAMD<br>
259
+ model name &nbsp;β†’ AMD Athlon(tm) Processor<br>
260
+ cpu MHz &nbsp;&nbsp;&nbsp;&nbsp;β†’ 1007.089<br>
261
+ cache size &nbsp;β†’ 256 KB<br>
262
+ cpu cores &nbsp;&nbsp;β†’ 1<br>
263
+ bogomips &nbsp;&nbsp;&nbsp;β†’ 2014.17<br>
264
+ SSE2 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;β†’ not present
265
+ </div>
266
+
267
+ <div class="screenshot-box">
268
+ <div class="screenshot-label">// slitaz 5.0 β€” athlon 1ghz running supra-50m instruct</div>
269
+ <img src="./athlon-supra.png" alt="Screenshot showing Supra-50M running on a 1999 AMD Athlon under SliTaz Linux">
270
+ </div>
271
+
272
+ <p>The OS is <strong>SliTaz 5.0</strong>, a minimal Linux distribution designed for very old or resource-constrained hardware. The terminal on the left shows the model running and responding to the prompt "Open the pod bay doors, HAL." The right terminal shows <code>cat /proc/cpuinfo</code> confirming the hardware. This is real.</p>
273
+
274
+ <h2>The SSE2 problem and how they solved it</h2>
275
+ <p>The standard tool for running LLMs on CPU is <strong>llama.cpp</strong>, but llama.cpp requires SSE2 which this Athlon does not have. So the user switched to <strong>llama2.c</strong>, a much simpler C inference engine originally written by Andrej Karpathy, and asked Claude to write a custom tokenizer compatible with our vocabulary format. That is a non-trivial amount of engineering just to get a model loaded, and they pulled it off.</p>
276
+
277
+ <div class="callout">
278
+ <span>// inference stack on the athlon</span>
279
+ Runtime &nbsp;&nbsp;&nbsp;β†’ llama2.c (no SSE2 required)<br>
280
+ Tokenizer &nbsp;β†’ custom, written with Claude's help<br>
281
+ Backend &nbsp;&nbsp;&nbsp;β†’ CPU only, single core<br>
282
+ Speed &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;β†’ ~1.3 tokens per second<br>
283
+ Model &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;β†’ Supra-50M-Instruct (200 MB on disk)
284
+ </div>
285
+
286
+ <h2>What the model said</h2>
287
+ <p>The prompt was "Open the pod bay doors, HAL." The Instruct model ran with it:</p>
288
+
289
+ <div class="output-example">
290
+ <div class="prompt-label">// prompt β€” on a 1ghz cpu, 1999</div>
291
+ <div class="prompt-text">"Open the pod bay doors, HAL."</div>
292
+ <div class="output-label">// supra-50m instruct response</div>
293
+ <div class="output-text">Open the gate doors, HAL. [ON]<br><br>
294
+ The host blocks power, leaves network, is silent, and does not interrupt other network machines.<br><br>
295
+ Β· Your son: "Modules waiting for a call."<br>
296
+ Β· (Module delay). See in alphabetical order. To modulate (a communication-control message) by closing the gap between the lines of<br>
297
+ Β· The Board is sending a sample message to</div>
298
+ </div>
299
+
300
+ <p>Silly and drifty, as the user described. But it is responding to a 2001: A Space Odyssey reference with something that is thematically in the right ballpark, on a CPU that was already 2 years old when the movie's sequel came out. We will take it.</p>
301
+
302
+ <h2>The thought that hit us</h2>
303
+ <p>The user ended their post with a line that stuck with us:</p>
304
+
305
+ <div class="reddit-quote">
306
+ <span class="reddit-meta">// u/drone_stonks on r/LocalLLM</span>
307
+ "It's crazy to think that with the right file size of 200 MB, we could have experienced this magic back in 1999."
308
+ </div>
309
+
310
+ <p>That is the whole point of building small. Not everyone has a Strix Halo. Not everyone has a GPU. Some people have old hardware, low-power devices, or embedded systems where 200 MB is already a stretch. If a model this size can run on a single-core 1 GHz CPU from 1999, it can run essentially anywhere. That is the goal we have been building toward since Supra Mini v1.</p>
311
+
312
+ <h2>Thank you</h2>
313
+ <p>Seriously, this made our day. If you are running Supra models on unusual or constrained hardware, we want to hear about it. Posts like this are exactly why we keep the weights open and the file sizes honest.</p>
314
+
315
+ <p><strong>You can find Supra-50M Instruct on HuggingFace. No Strix Halo required.</strong></p>
316
+
317
+ <div class="callout">
318
+ <span>// links</span>
319
+ Model &nbsp;&nbsp;&nbsp;β†’ huggingface.co/SupraLabs/Supra-50M-Instruct<br>
320
+ Reddit &nbsp;&nbsp;β†’ r/LocalLLM β€” original post by u/drone_stonks<br>
321
+ License β†’ Apache 2.0
322
+ </div>
323
+
324
+ <div class="tags">
325
+ <span class="tag">#community</span>
326
+ <span class="tag">#supra-50m</span>
327
+ <span class="tag">#edge-ai</span>
328
+ <span class="tag">#tinyml</span>
329
+ <span class="tag">#retro</span>
330
+ <span class="tag">#llama2c</span>
331
+ <span class="tag">#open-source</span>
332
+ <span class="tag">#cpu-inference</span>
333
+ </div>
334
+ </div>
335
+ </article>
336
+
337
+ <footer>
338
+ <p class="mono">&copy; 2026 SupraLabs // Built for the community.</p>
339
+ </footer>
340
+ </div>
341
+
342
+ </body>
343
+ </html>