[{"data":1,"prerenderedAt":454},["ShallowReactive",2],{"project-48146369":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":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":44,"post_text":47,"what":48,"said":71,"maker_in_thread":217,"shape":224,"grid":227,"attempts":412,"same_week":417,"maker_shows":33,"maker_hidden":446,"reader_version":447,"card":448},"48146369","whichllm","Find the best local LLM for your hardware, ranked by benchmarks","title","Show HN: Find the best local LLM for your hardware, ranked by benchmarks","https:\u002F\u002Fgithub.com\u002FAndyyyy64\u002Fwhichllm","github.com","andyyyy64",1778836764,2026,283,68,160,4366,4,"legend","ai","local llm model selection","cli",[24,25,26,27],"local llm","llm benchmarks","gpu vram","model selection","mixed",-0.229,{"positive":31,"neutral":32,"mixed":33,"critical":34},6,15,2,16,39,{"execution":37,"design":40,"performance":41,"idea":42,"docs":43},{"positive":38,"critical":39},0,3,{"positive":38,"critical":38},{"positive":38,"critical":39},{"positive":33,"critical":18},{"positive":38,"critical":38},[45,45,38,45,39,39,38,38,38,38,38,38,38,45,45,45,38,39,39,45,45,38,38,45,45,45,39,39,46,46,39,45,46,38,45,38,39,45,46,39],1,5,null,{"problem":49,"audience":47,"pricing":47,"motivation":47,"time_to_build":47,"stack":59,"openness":69,"stage":70,"team_size":69},{"value":50,"source":51,"evidence":52},"Finding which local LLM is best for your hardware, not just which one fits","maker",[53,56],{"id":54,"by":11,"text":55},"48147908","Fair question. llmfit answers \"will this model fit in my memory?\" — it's a fit\u002Fsize calculator, and a good one. whichllm answers a different question: \"of the models that fit,…",{"id":57,"by":11,"text":58},"48147930","You're right that it doesn't run anything — it's a pre-download \u002F pre-purchase decision tool, so it estimates rather than measures by design (you can simulate a GPU you don't own…",[60],{"value":61,"source":62,"evidence":63},"Python","commenter",[64,68],{"id":65,"by":66,"text":67},"48147052","rvz","Other than it (whichllm) being written in Python, nothing else. I just use llmfit.",{"id":54,"by":11,"text":55},"unknown","launched",{"praise":72,"objections":88,"requests":138,"questions":171,"alternatives":186},[73],{"value":74,"source":62,"evidence":75},"Useful concept for picking local models by hardware",[76,80,84],{"id":77,"by":78,"text":79},"48149484","zambelli","Only thing I would add is the ability to point to new\u002Funcataloged benchmarks. If I have a favorite benchmark that best matches my use-case, the ability to point to it and have it…",{"id":81,"by":82,"text":83},"48150004","vaporaviatorlab","Cool idea – the local LLM space really needs a tool like this that actually understands hardware and real benchmarks instead of just “biggest model that fits.”",{"id":85,"by":86,"text":87},"48147879","wald3n","Cool idea, thanks for making this",[89,104,112,119,127],{"value":90,"source":62,"evidence":91},"Thread suspects AI-generated project and promotion; maker's account looks inauthentic",[92,96,100],{"id":93,"by":94,"text":95},"48148561","Aurornis","1. The results of this tool are not good. It’s recommending outdated models like Qwen2.5 series and missing good new models. 2. Nothing about this needs to run on your local…",{"id":97,"by":98,"text":99},"48149442","hazelnut","There is apparently a marketing.md file that was deleted 25min ago with the strategy to post on HN.…",{"id":101,"by":102,"text":103},"48148377","rafram","OP is a newish user, all of their responses here are copied straight from Claude, and this project has an LLM slop readme (count them: 48 em-dashes on the page!) and LLM code.…",{"value":105,"source":62,"evidence":106},"Recommends outdated models such as Qwen2.5 and misses newer ones",[107,108],{"id":93,"by":94,"text":95},{"id":109,"by":110,"text":111},"48146965","Bigsy","Brew install is broken It seems pretty rubbish I have to say, its recommending me loads of qwen 2.5 which are really old and I'm easy running qwen3.5 and 3.6 models on this mac…",{"value":113,"source":62,"evidence":114},"Estimates only, does not measure speed on the user's machine",[115],{"id":116,"by":117,"text":118},"48147202","pbronez","Cool, but it looks like it doesn’t actually test anything on your machine? It does hardware detection and then some lookups. Maybe I missed it but I really want a tool like this…",{"value":120,"source":62,"evidence":121},"Brew install reported broken",[122,123],{"id":109,"by":110,"text":111},{"id":124,"by":125,"text":126},"48148730","Bekamakhara","Tried it on a 4060, got Qwen3-14B Q3_K_M. Matches what I actually run. Brew install failed for me too though (macOS 14.5).",{"value":128,"source":62,"evidence":129},"Unified memory and iGPU detection is wrong",[130,134],{"id":131,"by":132,"text":133},"48147380","cyanydeez","This doesn't correclty detect the unified memory architecture for GPU 0: STRXLGEN — 8.0 GB (ROCm 6.19.8-200.fc43.x86_64) — BW: N\u002FA CPU: AMD RYZEN AI MAX+ 395 w\u002F Radeon 8060S — 16…",{"id":135,"by":136,"text":137},"48147959","justindotdev","it'd be nice if it had igpu support, it cant even detect it. overall great tool though. happy this exists.",[139,150,160,167],{"value":140,"source":62,"evidence":141},"Support use-case based recommendations such as coding or video",[142,146],{"id":143,"by":144,"text":145},"48148048","armcat","Interesting concept! A suggestion: `whichllm \u003CUSE_CASE>` would be more beneficial, i.e. `which coding` or `which text-to-video`.",{"id":147,"by":148,"text":149},"48147931","zkmon","\"Best LLM\" doesn't really depend on hardware alone. It actually depends more on your needs - type of workload, context length needed etc.",{"value":151,"source":62,"evidence":152},"Support sliding-window attention in VRAM estimates",[153,157],{"id":154,"by":155,"text":156},"48146857","Jasssss","The plan command is clever. How do you handle the VRAM estimation for models with sliding window attention vs full context? Something like Mistral at 32k context uses way less KV…",{"id":158,"by":155,"text":159},"48159046","Nice! Mistral 7B v0.1 is sliding_window: 4096 in the HuggingFace config.json (though v0.2 sets it to null). Gemma 2 alternates sliding window (4096) and full attention every…",{"value":161,"source":62,"evidence":162},"Add more quantization formats such as IQ3_M",[163],{"id":164,"by":165,"text":166},"48147040","macwhisperer","can you add in the other quants like IQ3_M? also my personal simple rule of thumb for local ai sizing is: max model size (GB) = ram (GB) \u002F 1.65",{"value":168,"source":62,"evidence":169},"Allow custom benchmarks",[170],{"id":77,"by":78,"text":79},[172,179],{"value":173,"source":62,"evidence":174},"Where do the benchmark metrics come from",[175],{"id":176,"by":177,"text":178},"48148572","drzaiusx11","Where are the metrics being sourced from exactly? Externally? or does this project have benchmarks running somewhere for the purposes of this project. Latter would likely be more…",{"value":180,"source":62,"evidence":181},"How is the model selected, is AI used",[182],{"id":183,"by":184,"text":185},"48149173","swaminarayan","How it select model? using AI?",[187,195,206,213],{"value":188,"source":62,"evidence":189},"llmfit",[190,194],{"id":191,"by":192,"text":193},"48147035","llagerlof","What’s new regarding llmfit? https:\u002F\u002Fgithub.com\u002FAlexsJones\u002Fllmfit",{"id":65,"by":66,"text":67},{"value":196,"source":62,"evidence":197},"canirun.ai",[198,202],{"id":199,"by":200,"text":201},"48147157","jordiburgos","This is very helpful too: https:\u002F\u002Fwww.canirun.ai\u002F",{"id":203,"by":204,"text":205},"48148570","Jeremy1026","canirun.ai does similar, but doesn't require any installs. I've found it to be pretty accurate for my setup too.",{"value":207,"source":62,"evidence":208},"artificialanalysis.ai",[209],{"id":210,"by":211,"text":212},"48147962","karmakaze","Not perfect, but I find the artificialanalysis.ai \"Intelligence vs. Output Tokens Used in Artificial Analysis Intelligence Index\" chart[0] (scroll down to the titled chart) to be…",{"value":214,"source":62,"evidence":215},"RapidMLX",[216],{"id":116,"by":117,"text":118},{"comments":39,"answered":39,"key":218},[219,220,221],{"id":57,"text":58},{"id":54,"text":55},{"id":222,"text":223},"48147917","Good catch that's a real gap. The KV estimate is GQA\u002FMQA-aware (per-model head config) but currently assumes dense full-context attention; it does not model sliding-window \u002F…",{"commenters":225,"max_depth":18,"maker_replies":39,"first_comment_mins":15,"lifespan_hours":226},54,52,[228,230,232,235,238,241,244,246,250,252,255,256,259,261,264,267,270,272,275,278,281,282,285,286,289,292,295,297,299,304,308,312,314,316,319,321,323,327,330,334,336,338,341,343,345,348,349,350,354,357,359,361,364,366,368,371,374,378,381,385,387,390,393,395,399,401,403,407],[93,38,45,229,94,38],"project\u002Fcritical\u002Fexecution",[97,38,45,231,98,38],"maker\u002Fcritical\u002Fnone",[233,38,38,234,94,38],"48149689","other\u002Fneutral\u002Fnone",[236,38,38,234,237,38],"48149839","ekianjo",[239,38,38,234,240,38],"48150022","bityard",[242,38,45,231,243,38],"48149892","jwxz",[245,38,38,234,240,38],"48150298",[247,38,39,248,249,38],"48149464","project\u002Fneutral\u002Fdesign","worldsavior",[251,38,39,248,94,38],"48149651",[253,38,38,234,254,38],"48150460","aggregator-ios",[199,45,38,234,200,38],[257,45,38,234,258,38],"48147506","embedding-shape",[260,45,38,234,102,38],"48150301",[262,45,38,234,263,38],"48147547","freeCandy",[265,45,38,234,266,38],"48168709","jdiff",[268,45,38,234,269,38],"48147616","kilroy123",[271,45,38,234,266,38],"48159384",[273,45,38,234,274,38],"48148129","schaefer",[276,45,38,234,277,38],"48149708","lowbloodsugar",[279,45,38,234,280,38],"48168041","gcr",[210,33,38,234,211,38],[283,39,38,234,284,38],"48147087","pornel",[109,18,45,229,110,38],[287,18,45,231,288,38],"48147438","vachina",[290,46,39,248,291,38],"48148510","est",[293,46,39,248,294,38],"48149201","ryandrake",[116,31,45,296,117,38],"project\u002Fcritical\u002Fperformance",[57,31,38,298,11,45],"maker\u002Fneutral\u002Fperformance",[300,301,45,302,303,38],"48149431",7,"project\u002Fcritical\u002Fnone","wren6991",[305,301,46,306,307,38],"48149577","project\u002Fpositive\u002Fnone","desireco42",[309,301,39,310,311,38],"48150967","project\u002Fneutral\u002Fnone","dlcarrier",[313,301,39,310,303,38],"48161756",[131,315,45,296,132,38],8,[191,317,39,318,192,38],9,"project\u002Fneutral\u002Fidea",[65,317,45,320,66,38],"project\u002Fcritical\u002Fidea",[54,317,38,322,11,45],"maker\u002Fneutral\u002Fidea",[324,317,38,325,326,38],"48148195","commenter\u002Fneutral\u002Fnone","slices",[328,317,38,325,329,38],"48148382","peterdsharpe",[331,317,38,332,333,38],"48148436","commenter\u002Fneutral\u002Fidea","entrope",[335,317,45,229,211,38],"48148498",[337,317,38,234,211,38],"48148234",[339,340,45,320,240,38],"48150249",10,[147,342,45,320,148,38],11,[143,344,39,318,144,38],12,[154,346,39,347,155,38],13,"project\u002Fneutral\u002Fperformance",[222,346,38,298,11,45],[158,346,39,347,155,38],[351,352,46,306,353,38],"48147095",14,"sleepyeldrazi",[355,352,38,325,356,38],"48150029","DANmode",[358,32,46,306,307,38],"48149668",[360,34,39,248,211,38],"48148202",[176,362,39,363,177,38],17,"project\u002Fneutral\u002Fdocs",[77,365,39,318,78,38],18,[101,367,45,231,102,38],19,[81,369,46,370,82,38],20,"project\u002Fpositive\u002Fidea",[124,372,39,373,125,38],21,"project\u002Fmixed\u002Fexecution",[375,376,38,234,377,38],"48147912",22,"andai",[379,376,38,234,380,38],"48147937","iknowstuff",[382,383,45,296,384,38],"48146997",23,"kramit1288",[203,386,38,234,204,38],24,[388,386,38,234,389,38],"48148700","CharlesW",[164,391,39,392,165,38],25,"project\u002Fneutral\u002Fexecution",[135,394,39,373,136,38],26,[396,397,45,320,398,38],"48149410",27,"nurettin",[183,400,39,392,184,38],28,[85,402,46,370,86,38],29,[404,405,45,302,406,38],"48150060",30,"vardump",[408,409,46,410,411,38],"48148276",31,"maker\u002Fpositive\u002Fnone","s3anw3",[413,416],{"id":414,"t":415,"points":39,"comments":38},"47308511",1773061517,{"id":4,"t":12,"points":14,"comments":15},[418,423,427,432,437,441],{"id":419,"name":420,"points":421,"category":422},"48179677","Files.md",730,"productivity",{"id":424,"name":425,"points":426,"category":20},"48192383","Forge",687,{"id":428,"name":429,"points":430,"category":431},"48191602","Gaussian Splat of a Strawberry",530,"creative",{"id":433,"name":434,"points":435,"category":436},"48169874","Semble",445,"dev_tools",{"id":438,"name":439,"points":440,"category":422},"48215979","Phosphene",428,{"id":442,"name":443,"points":444,"category":445},"48178184","Auto-identity-remove",325,"security_privacy",false,"v2",{"id":449,"name":5,"line":6,"ai":446,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":450,"top":18,"kw":451,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":452,"url":9,"mix":453,"praise":74,"objection":90,"sub":21},48146369,-0.23,[24,25,26,27],"1101330000000111033110011133553150103153",[31,32,33,34],1793991154299]