Skip to content

Latest commit

 

History

History
427 lines (334 loc) · 16.1 KB

File metadata and controls

427 lines (334 loc) · 16.1 KB

Vintage CPU Research Summary for RustChain RIP-200

Executive Summary

Research and implementation of 50+ vintage CPU architectures spanning 1979-2012 for the RustChain antiquity detection system. This document provides comprehensive detection patterns, multipliers, and historical context.

Deliverables

  1. cpu_vintage_architectures.py - Complete detection module with regex patterns
  2. VINTAGE_CPU_INTEGRATION_GUIDE.md - Integration instructions
  3. This summary - Research findings and recommendations

Architecture Categories

1. Pre-Pentium 4 Intel x86 (1985-2003)

Architecture Years Multiplier Key Models
i386 1985-1994 3.0x 80386DX, 386SX (first 32-bit x86)
i486 1989-1997 2.8x 486DX, 486DX2, 486DX4
Pentium P5 1993-1999 2.6x Original Pentium, Pentium MMX
Pentium Pro 1995-1998 2.4x First P6 architecture, server-focused
Pentium II 1997-1999 2.2x Klamath, Deschutes, early Celeron
Pentium III 1999-2003 2.0x Katmai, Coppermine, Tualatin, SSE

Detection Strategy:

  • /proc/cpuinfo patterns: "i386", "i486", "Pentium", "Pentium Pro", "Pentium II", "Pentium III"
  • Windows Registry: ProcessorNameString contains exact model names
  • Clock speeds distinguish generations (Pentium: 60-233MHz, PII: 233-450MHz, PIII: 450-1400MHz)

Rarity in 2025:

  • 386/486: Extremely rare (<0.01% of active systems)
  • Pentium: Rare retro enthusiasts only
  • P2/P3: Occasional legacy industrial systems

2. Oddball x86 Vendors (1992-2011)

Vendor Architecture Years Multiplier Notes
Cyrix 6x86/MII/MediaGX 1995-1999 2.5x Pentium competitor, budget PCs
VIA C3 (Samuel/Ezra) 2001-2005 1.9x Low-power embedded
VIA C7 (Esther) 2005-2011 1.8x Enhanced efficiency
VIA Nano (Isaiah) 2008-2011 1.7x Final VIA mainstream CPU
Transmeta Crusoe 2000-2004 2.1x Software x86 emulation, code morphing
Transmeta Efficeon 2004-2007 2.0x 2nd-gen code morphing
IDT/Centaur WinChip 1997-2001 2.3x Budget competitor to Pentium

Detection Strategy:

  • "Cyrix", "6x86", "MediaGX" in CPU string
  • "VIA C3", "VIA C7", "VIA Nano"
  • "Transmeta", "Crusoe", "Efficeon"
  • "WinChip", "IDT", "Centaur"

Historical Significance:

  • Cyrix 6x86: Outsold Intel Pentium in some markets (1996-1997)
  • Transmeta: Revolutionary code morphing technology, used in Sony VAIO, IBM ThinkPad
  • VIA C7: Dominated thin clients and embedded systems (2005-2010)

3. Vintage AMD x86 (Pre-K7, 1996-1999)

Architecture Years Multiplier Description
K5 1996-1997 2.4x First AMD-designed x86, competed with Pentium
K6 1997-1999 2.2x K6, K6-2, K6-III, introduced 3DNow! SIMD

Detection Strategy:

  • "AMD-K5", "K5-PR75", "K5-PR100" (performance rating, not MHz)
  • "AMD K6", "K6-2", "K6-III", "K6/2", "K6/3"

Market Impact:

  • K6-2: Outsold Intel Pentium II in budget market (1998-1999)
  • 3DNow!: AMD's SIMD extension, competitor to Intel SSE

4. Motorola 68K Family (1979-2000)

Model Years Multiplier Systems
68000 1979-1990 3.0x Original Mac, Amiga 500/1000, Atari ST
68010 1982-1988 2.9x Enhanced 68000, Mac 512K
68020 1984-1990 2.8x Mac II, Amiga 1200, 32-bit
68030 1987-1994 2.6x Mac IIx/SE/30, Amiga 3000, on-die MMU
68040 1990-1996 2.4x Quadra, Amiga 4000, on-die FPU
68060 1994-2000 2.2x Amiga accelerators, rare Macs

Detection Strategy:

  • Linux/UAE: /proc/cpuinfo shows "cpu : 68040", "fpu : 68040"
  • Mac OS Classic: Gestalt Manager returns CPU type
  • String patterns: "68000", "MC68000", "m68000", "Motorola 68030"

Cultural Significance:

  • 68000: Powered original Mac (1984), defined 1980s personal computing
  • 68030: Mac SE/30 (1989) - most beloved compact Mac
  • 68040: Amiga 4000 (1992) - multimedia workstation era

Rarity in 2025:

  • Extremely rare, mostly in museums or vintage collections
  • Amiga community still active with emulators (UAE, FS-UAE)
  • Mac 68K systems preserved by vintage Mac enthusiasts

5. PowerPC Amiga (2002-2012)

System CPU Years Multiplier OS
AmigaOne G3 750/7457 2002-2005 2.4x AmigaOS 4.0
AmigaOne G4 7450/7447 2003-2006 2.3x AmigaOS 4.0+
Pegasos I G3 2002-2004 2.3x MorphOS, Linux
Pegasos II G4 2004-2006 2.2x MorphOS, AmigaOS 4
Sam440 PPC440EP 2007-2010 2.0x AmigaOS 4.1
Sam460 PPC460EX 2010-2012 1.9x AmigaOS 4.1 FE

Detection Strategy:

  • "AmigaOne", "Pegasos", "Sam440", "Sam460" in CPU/system strings
  • MorphOS: uname -m returns PowerPC variant
  • AmigaOS 4: Version command shows CPU

Community Status:

  • Active niche community (AmigaOS 4 still updated in 2024)
  • Sam460 available as embedded board
  • Pegasos II highly collectible

6. RISC Workstations (1985-2017)

DEC Alpha (1992-2004) - Fastest CPU of 1990s

Generation Years Multiplier Clock Speed
21064 (EV4) 1992-1995 2.7x 150-200 MHz
21164 (EV5/EV56) 1995-1998 2.5x 300-600 MHz
21264 (EV6/EV67/EV68) 1998-2004 2.3x 500-1250 MHz

Historical Notes:

  • First 64-bit CPU architecture
  • Fastest integer performance in 1990s (beat Pentium II/III)
  • Used in Cray supercomputers, Digital Unix, OpenVMS
  • Died after Compaq acquired DEC (1998), ended by HP (2004)

Sun SPARC (1987-2017)

Generation Years Multiplier Systems
SPARC v7 1987-1992 2.9x Sun 4, SPARCstation 1
SPARC v8 1990-1996 2.6x MicroSPARC, SuperSPARC
SPARC v9 1995-2005 2.3x UltraSPARC I/II/III
UltraSPARC T1 2005-2010 1.9x Niagara, CMT (8 cores, 32 threads)
UltraSPARC T2 2007-2011 1.8x Niagara 2 (8 cores, 64 threads)

Detection Strategy:

  • /proc/cpuinfo on Solaris/Linux: "cpu : TI UltraSparc II (BlackBird)"
  • uname -p returns "sparc" or "sparc64"

Market Position:

  • Dominated Unix workstation market (1990-2000)
  • Oracle SPARC M-series still sold until 2020
  • Legacy servers still running in enterprise

MIPS (1985-present)

Generation Years Multiplier Notable Uses
R2000 1985-1988 3.0x First commercial RISC CPU
R3000 1988-1994 2.8x PlayStation 1, SGI Indigo
R4000/R4400 1991-1997 2.6x 64-bit, SGI workstations
R5000 1996-2000 2.3x SGI O2, Indy, Nintendo 64
R10000-R16000 1996-2004 2.4x SGI Origin, Octane, superscalar

Detection Strategy:

  • /proc/cpuinfo: "cpu model : MIPS R5000 Revision 2.1"
  • SGI IRIX: hinv command shows CPU

Cultural Impact:

  • R3000: Inside original PlayStation (1994) - 100M+ units
  • R4000: First 64-bit commercial CPU (1991)
  • R5000: Nintendo 64 (modified RCP, 1996) - 33M+ units
  • R10000: SGI workstations used for Jurassic Park, Titanic CGI

HP PA-RISC (1986-2008)

Generation Years Multiplier Description
PA-RISC 1.0 1986-1990 2.9x PA7000, HP 9000 Series 700/800
PA-RISC 1.1 1990-1996 2.6x PA7100/7200, HP workstations
PA-RISC 2.0 1996-2008 2.3x PA8000-PA8900, 64-bit, final gen

Detection Strategy:

  • HP-UX: uname -m returns "9000/785" or similar
  • /proc/cpuinfo on Linux: "cpu family : PA-RISC 2.0"

Enterprise Legacy:

  • HP-UX still supported until 2025
  • Mission-critical banking/telecom systems
  • PA-8900 (2005) was final PA-RISC CPU

IBM POWER (Pre-POWER8, 1990-2013)

Generation Years Multiplier Notes
POWER1 1990-1993 2.8x RIOS, original POWER
POWER2 1993-1996 2.6x RS/6000, first superscalar
POWER3 1998-2001 2.4x 64-bit, pSeries
POWER4/4+ 2001-2004 2.2x First dual-core CPU (2001!)
POWER5/5+ 2004-2007 2.0x SMT, LPAR virtualization
POWER6 2007-2010 1.9x High frequency (5 GHz)
POWER7/7+ 2010-2013 1.8x TurboCore, 8 cores, SMT4

Detection Strategy:

  • AIX/Linux: /proc/cpuinfo shows "cpu : POWER7 (architected)"
  • prtconf on AIX shows CPU details

Innovation Leadership:

  • POWER4 (2001): First commercial dual-core CPU (Intel followed in 2005)
  • POWER5 (2004): Hardware virtualization (pre-dates Intel VT-x)
  • POWER6 (2007): Highest clock speed ever (5.0 GHz)

Multiplier Justification

3.0x Tier - Computing Pioneers (1979-1989)

  • 68000 (1979): Defined personal computing (Mac, Amiga, Atari)
  • 386 (1985): First 32-bit x86, enabled modern operating systems
  • MIPS R2000 (1985): First commercial RISC, influenced ARM

2.8-2.9x Tier - Early Innovations (1982-1992)

  • 486 (1989): First pipelined x86, on-die cache
  • 68020 (1984): First 32-bit 68K, Mac II era
  • SPARC v7 (1987): Sun workstation dominance
  • POWER1 (1990): IBM's RISC workstation entry

2.4-2.7x Tier - Vintage Era (1990s)

  • Pentium (1993): Superscalar x86, 100M+ units
  • 68040 (1990): Peak 68K performance
  • Alpha 21064 (1992): 64-bit performance king
  • MIPS R4000 (1991): First 64-bit RISC

2.0-2.3x Tier - Late Vintage (1999-2005)

  • Pentium III (1999): Last pre-NetBurst Intel
  • K6 (1997): AMD's 3DNow! innovation
  • PA-RISC 2.0 (1996): HP's 64-bit workstation
  • POWER4 (2001): First dual-core

1.7-1.9x Tier - Early Modern (2005-2011)

  • VIA Nano (2008): Last x86 alternative
  • UltraSPARC T1 (2005): CMT innovation
  • POWER7 (2010): Modern POWER before current era

Detection Confidence

High Confidence (>95%)

  • Intel x86 (386-PIII): Well-documented patterns in /proc/cpuinfo
  • AMD K5/K6: Distinct branding in CPU strings
  • PowerPC Amiga: Unique system names (AmigaOne, Pegasos, Sam)

Medium Confidence (80-95%)

  • RISC workstations: Requires OS-specific detection
  • Oddball x86: May need vendor ID checks
  • IBM POWER: AIX vs Linux detection differs

Lower Confidence (<80%)

  • Motorola 68K: Emulators (UAE) may masquerade as real hardware
  • Transmeta: Code morphing presents as generic x86
  • VIA CPUs: May report as generic "VIA" without model

Anti-Spoofing Recommendations

  1. Cross-reference multiple sources:

    • /proc/cpuinfo model name
    • CPU vendor ID (cpuid instruction)
    • System DMI/SMBIOS data
    • Boot dmesg logs
  2. Performance fingerprinting:

    • Real 486 cannot do 1M ops/sec
    • Real 68000 has predictable cache patterns
    • Alpha 21064 has distinct memory latency
  3. Hardware entropy checks (existing RIP-PoA):

    • Vintage CPUs have higher jitter variance
    • Real oscillators drift over 30+ years
    • Thermal patterns differ from modern silicon
  4. Known emulator detection:

    • QEMU reports vendor ID "QEMU Virtual CPU"
    • UAE emulator has distinct filesystem paths
    • VirtualBox/VMware have CPUID signatures

Deployment Priority

Phase 1 - Common Vintage (Implement First)

  • Pentium II/III (most likely vintage hardware still running)
  • K6 series (AMD retro enthusiasts)
  • PowerPC Amiga (active community)

Phase 2 - Rare Vintage

  • 386/486 (extremely rare, high multiplier)
  • Pentium/Pentium Pro (collectible)
  • Cyrix/VIA/Transmeta (oddball x86)

Phase 3 - RISC Workstations

  • Alpha (DEC enthusiasts, emulators)
  • SPARC (Oracle legacy servers)
  • MIPS (SGI collectors)
  • PA-RISC (HP-UX systems)
  • POWER (AIX systems)

Testing Strategy

Test Cases

  1. Modern Baseline:

    detect("AMD Ryzen 9 7950X") → 1.0x (modern, use existing code)
  2. Vintage Intel:

    detect("Intel 80386DX @ 33MHz") → 3.0x (ancient)
    detect("Intel Pentium III CPU 1000MHz") → 2.0x (vintage)
  3. Oddball x86:

    detect("Cyrix 6x86MX PR200") → 2.5x (oddball)
    detect("VIA C3 Samuel 2") → 1.9x (low-power)
  4. 68K:

    detect("MC68040 @ 33MHz") → 2.4x (classic Mac/Amiga)
  5. RISC:

    detect("Alpha 21064 @ 150MHz") → 2.7x (DEC workstation)
    detect("MIPS R10000 @ 195MHz") → 2.4x (SGI)

Validation

Run demo script to verify all 50+ architectures:

python3 cpu_vintage_architectures.py

Expected output:

  • 50+ CPU detections with years 1979-2012
  • Multipliers from 1.7x to 3.0x
  • Sorted ranking by multiplier

Integration with Existing System

File Structure

rustchain-complete/
├── cpu_architecture_detection.py       # Modern (2000-2025)
├── cpu_vintage_architectures.py        # Vintage (1979-2003) ← NEW
├── VINTAGE_CPU_INTEGRATION_GUIDE.md    # Integration docs ← NEW
└── VINTAGE_CPU_RESEARCH_SUMMARY.md     # This file ← NEW

Detection Flow

def unified_detection(brand_string):
    # 1. Try vintage detection first (more specific patterns)
    vintage_result = detect_vintage_architecture(brand_string)
    if vintage_result:
        return vintage_result

    # 2. Fall back to modern detection
    return detect_cpu_architecture(brand_string)

Server-Side Validation

Add to rustchain_v2_integrated_v2.2.1_rip200.py:

from cpu_vintage_architectures import detect_vintage_architecture

def validate_attestation(data):
    brand = data.get("device", {}).get("cpu_brand", "")

    # Check if vintage CPU claim is valid
    vintage = detect_vintage_architecture(brand)
    if vintage:
        vendor, arch, year, multiplier = vintage
        # Apply time decay to vintage bonuses
        # Validate against blockchain genesis timestamp

References

Primary Sources

Vendor-Specific

Community Resources

Conclusion

This research provides comprehensive vintage CPU detection covering 50+ architectures from 1979-2012. The multiplier system (1.7x-3.0x) incentivizes preservation of computing history while remaining economically fair through time decay.

Key Achievements:

  1. 50+ vintage CPU architectures cataloged
  2. Accurate detection patterns for each
  3. Historically justified multipliers
  4. Integration path with existing modern detection
  5. Anti-spoofing recommendations

Next Steps:

  1. Integrate cpu_vintage_architectures.py into miner client
  2. Add server-side validation
  3. Test with real vintage hardware (if available)
  4. Deploy to production after verification