Skip to main content

Posts

Showing posts with the label CPU

Building a Dual V100 AI Workstation for Local LLMs

In today's software development landscape, local Large Language Models (LLMs) offer unprecedented privacy, zero latency, and freedom from subscription fees. While I generally avoid purely " vibe coding " for my projects, having robust inline code completion and chat directly integrated into IDEs speeds up development significantly. However, consumer GPUs with high VRAM often cost enough that paying for cloud inference ends up being the more economical option for most developers. To overcome this, I recently completed constructing a custom, dual-rack compute node specifically designed to host LLMs and compile complex codebases without breaking the bank. Here is the full engineering breakdown of how I designed, assembled, and configured this dual Tesla V100 machine from scratch. Fully assembled rig. The core philosophy behind this build was maximizing compute performance and Tensor VRAM density while strictly controlling costs. Consumer-grade GPUs with large VRAM, su...

Building the TD4 4-Bit CPU

The TD4 is a famous 4-bit CPU featured in the book How to Build a CPU by Kaoru Tonami . The book focuses on constructing a functional processor entirely from basic 74-series TTL logic ICs. While the book is unfortunately only available in Japanese, a friend from Japan sent me a copy along with a TD4 PCB. I believe the PCB is based on the open-source design files available on BG5DIW's GitHub repository . "How to Build CPU" book and the PCB. Recently, I finally found the time to build and experiment with it. The project took a few months, as I had to translate the book myself to grasp the core concepts. The overall design is simple and elegant, offering a set of 12 instructions and a 16-byte ROM (implemented via DIP switches) for programming. The board operates on 5V and can be powered via USB. Most components were sourced from local shops, though I had to order a few 74HC-series ICs online. Later, I tested the circuit by replacing some 74HC components with 74LS series...

8-bit assembler compiler project

This project is an assembler compiler to generate a binary executable for 8-bit x86 like CPU systems. This compiler can parse NASM style assembler code and it compatibles with Marco Schweighauser's javascript 8-bit virtual CPU . Compare with Marco Schweighauser's javascript compiler this compiler parse almost same assembler code and generate almost identical executable code. The only difference in this parser is that all the operands are separated by white space(s), and not with the comma ( , ). jmp start hello: db "Hello World!" db 0 start: mov c hello mov d 232 call print hlt print: push a push b mov b 0 loop: mov a [c] mov [d] a inc c inc d cmp b [c] jnz loop pop b pop a ret The output generated by this compiler for " Hello World " sample is listed in below and it can execute directly with Marco Schweighauser's 8-bit virtual CPU . 0000 1F0F 4865 6C6C 6F20 576F 726C 6421 0006 0010 0202 0603 E838 1800 3200 320...

LiteASM - Light Weight & Customizable Assembly Compiler & Virtual Machine

LiteASM is a Light weight and reconfigurable Assembly language compiler and Virtual Machine. It is design to fulfill the following core requirements: As a scripting interface for embedded systems. As a cross platform scripting interface. As a experimental tool for compiler construction. LiteASM compiler is design with minimum static instruction set. Its dynamic instruction set can be easily extend using compilers configuration files. LiteASM compiler generate fixed length binary output file and it can execute on LiteASM Virtual Machine Simulator ( litevm ) or on top of platform specific virtual machine. Virtually LiteASM Virtual Machines can execute on any 8bit to 64bit CPU/MCU/DSP platform. 8bit version of Fibonacci series demo on LiteASM Virtual Machine Simulator LiteASM compiler and Virtual Machine simulator are distribute as a free and open source software (under the terms of GNU GPL version 3.0 ) and available for both Windows and Linux operating systems. This Lite...