[{"data":1,"prerenderedAt":213},["ShallowReactive",2],{"project-47470405":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":35,"aspects":36,"strip":40,"post_text":42,"what":43,"said":66,"maker_in_thread":135,"shape":139,"grid":142,"attempts":177,"same_week":178,"maker_shows":162,"maker_hidden":205,"reader_version":206,"card":207},"47470405","ps2-llm","I ran a language model on a PS2","title","Show HN: I ran a language model on a PS2","https:\u002F\u002Fgithub.com\u002Fxaskasdf\u002Fps2-llm","github.com","xaskasdf",1774121277,2026,46,12,1281,4366,30,"shown","ai","language model inference","other",[24,25,26,27,28],"ps2 llm","language model","quantized inference","emotion engine","cd-rom streaming","loved",0.273,{"positive":32,"neutral":33,"mixed":34,"critical":34},4,6,0,10,{"idea":37,"performance":38},{"positive":34,"critical":34},{"positive":39,"critical":34},3,[39,39,39,41,34,34,39,34,39,39,41,34,41,41],5,"Short answer: yes.\n\nThe Emotion Engine has 32 MB of RAM total, so the trick is streaming weights from CD-ROM one matrix at a time during the forward pass — only activations, KV cache and embeddings live in RAM. This means models bigger than the RAM can still run, they just read more from disc.\n\nHad to build a custom quantized format (PSNT), hack endianness, write a tokenizer pipeline, and most of the PS2 SDK from scratch (releasing that separately). The model itself is also custom — a 10M param Llama-style architecture I trained specifically for this.\n\nAnd it works. On real hardware.",{"problem":44,"audience":50,"pricing":50,"motivation":50,"time_to_build":50,"stack":51,"openness":64,"stage":65,"team_size":64},{"value":45,"source":46,"evidence":47},"Running a language model on hardware with only 32 MB of RAM by streaming weights from CD-ROM.","maker",[48],{"id":49},"post",null,[52,56,60],{"value":53,"source":46,"evidence":54},"PSNT custom quantized format",[55],{"id":49},{"value":57,"source":46,"evidence":58},"Custom 10M parameter Llama-style model",[59],{"id":49},{"value":61,"source":46,"evidence":62},"Custom PS2 SDK",[63],{"id":49},"unknown","launched",{"praise":67,"objections":84,"requests":91,"questions":110,"alternatives":134},[68,80],{"value":69,"source":70,"evidence":71},"Streaming weights from CD-ROM is a clever constraint hack","commenter",[72,76],{"id":73,"by":74,"text":75},"47470788","SilentEditor","Love this project. The CD streaming trick is such a smart constraint hack, and honestly the best part is you trained the model for the hardware instead of forcing a desktop…",{"id":77,"by":78,"text":79},"47474362","SachitRafa","The CD-ROM streaming approach is the real insight here, keeping only activations and KV cache in RAM and streaming weights one matrix at a time sidesteps the 32MB constraint…",{"value":81,"source":70,"evidence":82},"Shipping on real hardware is impressive",[83],{"id":73,"by":74,"text":75},[85],{"value":86,"source":46,"evidence":87},"Inference speed is unclear; tok\u002Fsec counter reported zero",[88],{"id":89,"by":11,"text":90},"47470874","It didn't had any quality loss, since the PSNT as quantization it's mainly to convert the model over the console constraints (you can convert any model you want, even when i…",[92,99],{"value":93,"source":70,"evidence":94},"Share per-token latency and per-stage timings",[95,96],{"id":73,"by":74,"text":75},{"id":97,"by":74,"text":98},"47486960","Thats super helpful, thanks for the details. Makes sense now that PSNT is more of a transport\u002Fruntime format for the PS2 constraints than a quality hack. Very cool that it…",{"value":100,"source":70,"evidence":101},"Faster storage such as HDD or network",[102,106],{"id":103,"by":104,"text":105},"47511681","randkyp","Neat! While the physicality of having the CD spin while running inference is undeniably cool, I wonder if you could run larger models at higher speeds through the PS2 HDD…",{"id":107,"by":108,"text":109},"47524657","LocalH","The network port is faster than the CDVD drive or any of those accessories with the exception of the HDD. The ethernet PHY links at 100Mbit, but the processors inside the PS2 are…",[111,119,123,127],{"value":112,"source":70,"evidence":113},"What is the per-token latency on real hardware",[114,115],{"id":73,"by":74,"text":75},{"id":116,"by":117,"text":118},"47473985","mememememememo","How many tok\u002Fhr?",{"value":120,"source":70,"evidence":121},"How much quality is lost from quantization",[122],{"id":73,"by":74,"text":75},{"value":124,"source":70,"evidence":125},"Why a custom format instead of GGUF",[126],{"id":77,"by":78,"text":79},{"value":128,"source":70,"evidence":129},"Were the EE vector units used",[130],{"id":131,"by":132,"text":133},"47511832","pooparse","IIRC the EE had some interesting hardware with vector units. Were these of any use\u002Fbenefit here?",[],{"comments":136,"answered":34,"key":137},1,[138],{"id":89,"text":90},{"commenters":15,"max_depth":39,"maker_replies":136,"first_comment_mins":140,"lifespan_hours":141},42,100,[143,145,149,150,154,158,161,163,166,167,170,172,174,175],[103,34,39,144,104,34],"project\u002Fneutral\u002Fidea",[146,34,39,147,148,34],"47512717","project\u002Fneutral\u002Fperformance","accrual",[107,34,39,147,108,34],[151,136,41,152,153,34],"47514279","project\u002Fpositive\u002Fnone","mghackerlady",[155,136,34,156,157,34],"47514830","commenter\u002Fneutral\u002Fnone","pjmlp",[159,136,34,160,153,34],"47521740","other\u002Fneutral\u002Fnone",[131,162,39,147,132,34],2,[164,39,34,160,165,34],"47514519","keremimo",[116,32,39,147,117,34],[168,41,39,144,169,34],"47518484","Real_Egor",[73,33,41,171,74,34],"project\u002Fpositive\u002Fperformance",[89,33,34,173,11,136],"project\u002Fpositive\u002Fexecution",[97,33,41,171,74,34],[77,176,41,171,78,34],7,[],[179,184,188,193,197,201],{"id":180,"name":181,"points":182,"category":183},"47506713","Video.js v10",648,"dev_tools",{"id":185,"name":186,"points":187,"category":20},"47503617","sentrysearch",438,{"id":189,"name":190,"points":191,"category":192},"47505144","Email.md",380,"productivity",{"id":194,"name":195,"points":196,"category":183},"47491466","Cq",225,{"id":198,"name":199,"points":200,"category":183},"47452515","Sonar",204,{"id":202,"name":203,"points":204,"category":183},"47499672","ProofShot",161,false,"v2",{"id":208,"name":5,"line":6,"ai":205,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":209,"top":18,"kw":210,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":211,"url":9,"mix":212,"praise":69,"objection":86,"sub":21},47470405,0.27,[24,25,26,27,28],"33350030335055",[32,33,34,34],1794036696727]