Top all-time · #3608
静水铭室
Personal blog · liuliu.me/eyesprogrammingsystems
静水铭室 is a personal blog at liuliu.me about programming and systems. Since 2010, 21 different Hacker News readers have linked it 63 times, most often “Stretch iPhone to its limit: 2GiB Stable Diffusion model runs locally on device”. The last post was in 2023, but the archive is still widely read.
Too few sampled comments (12) to say how often HN recommends it.?
Why HN links it
HN readers link liuliu.me mainly for its in-browser face detection demo and the ccv library it points to, plus a technical post on running Stable Diffusion on iOS.
Summarised by Claude from a sample of 12 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- Stretch iPhone to its limit: 2GiB Stable Diffusion model runs locally on device5 people · 5 mentions · first linked 2022-11-09
- A not-so-slow Face Detector in Javascript4 people · 4 mentions · first linked 2010-10-29
- Face Detector in JS3 people · 3 mentions · first linked 2012-03-25
- Loading CSV File at the Speed Limit of the NVMe Storage2 people · 5 mentions · first linked 2020-10-10
- The Phase-Change in User-Faced Computing2 people · 2 mentions · first linked 2024-01-19
- The Universal Training Loop of Machine Learning2 people · 2 mentions · first linked 2021-02-07
- JavaScript Face Detection Explained2 people · 2 mentions · first linked 2012-02-19
- Migrating iOS Project to Bazel, a Real-World Experience2 people · 2 mentions · first linked 2020-08-08
What Hacker News says?
Should be doable for parameters but at that point, you don't need compression rather just LLM.Int8 tricks would be sufficient. For activations, I wrote about it a while back: https://liuliu.me/eyes/reduce-another-70-memory-usage-for-de... It is not as useful for this case (inference) because the activations holds long (UNet holds downsampling passes' activations and use that for upsampling) is not that much of a mem…
Comment linking /eyes/reduce-another-70-memory-usage-for-deep-neural-network-training-over-mixed-precision-with-tensor-compression/
on “Stretch iPhone to its limit: 2GiB Stable Diffusion model runs locally on device”Submitted Stretch iPhone to its limit: 2GiB Stable Diffusion model runs locally on device as a story · 749 points
HN discussionYeah. I think unable to merge back into Swift mainline really makes the adoption harder. I made some efforts to having PythonKit / swift-jupyter run smoother and it feels really good as a replacement for Python: https://liuliu.me/eyes/data-science-setup-with-swift-in-2021... Luckily, I don't think Swift on other platforms is dead. SwiftNIO seems worked quite well as a project. Bazel support is solid. They still rele…
Comment linking /eyes/data-science-setup-with-swift-in-2021/
on “Swift for TensorFlow Shuts Down”Submitted Loading CSV File at the Speed Limit of the NVMe Storage as a story · 198 points
HN discussionNot really. But I did this: https://liuliu.me/eyes/write-cross-platform-gui-in-swift-lik... Unlike most comments here, I felt that Swift was a Python replacement to me.
Comment linking /eyes/write-cross-platform-gui-in-swift-like-it-is-1998/
on “Swift System Is Now Open Source”Submitted Bazel For Open-Source C/C++ Libraries Distribution as a story · 64 points
HN discussionThat's always the game plan though. I wrote about it a few days ago: https://liuliu.me/eyes/the-endgame-for-cryptocurrency/ Once you have big enough following, having enough systematic risk, you, average scammers can enter "too big to fail" category, especially in democratic countries. If USDT successfully turned half of the U.S. families holding 25% of cryptocurrency-related assets, they can work out any scamming i…
Comment linking /eyes/the-endgame-for-cryptocurrency/
on “Anyone Seen Tether’s Billions?”Submitted A More Natural Stackless Coroutine in C That Maintains Local Variables as a story · 61 points
HN discussionCSV is standardized in RFC 4180 (well, as standardized as most of what we considered internet "standard"). Otherwise agree, if you don't do escaping (a.k.a. "quoting", the same thing for CSV), you are not implementing it correctly. For example, if you quote a line break, in RFC 4180, this line break will be in that quoted string, but if you don't need to handle that, you can implement CSV parsing much faster (proper…
Comment linking /eyes/loading-csv-file-at-the-speed-limit-of-the-nvme-storage/
on “21 GB/s CSV Parsing Using SIMD on AMD 9950X”Submitted Research Notes on Humanoid Robots as a story · 25 points
HN discussionI wrote about my unconventional use of Swift on Linux (i.e. not a web app) a few months ago: https://liuliu.me/eyes/data-science-setup-with-swift-in-2021...
Comment linking /eyes/data-science-setup-with-swift-in-2021/
on “Apple’s use of Swift and SwiftUI in iOS 15”Submitted Reducing Memory Usage for DNN Training with Tensor Compression as a story · 25 points
HN discussion> how else would you multithread this? Doing two pass parsing: https://liuliu.me/eyes/loading-csv-file-at-the-speed-limit-o...
Comment linking /eyes/loading-csv-file-at-the-speed-limit-of-the-nvme-storage/
on “CSV Reader Benchmarks: Julia Reads CSVs 10-20x Faster than Python and R”Submitted Face Detector in JS as a story · 23 points
HN discussionXcode project (pbxproj) is simply ill-equipped for proper code reviews. Any modest size team should remove their Xcode projects from their codebase and move to either Bazel, Swift Package Manager or Xcodegen. It is really not that difficult and the benefit is quite obvious: https://liuliu.me/eyes/migrating-ios-project-to-bazel-a-real...
Comment linking /eyes/migrating-ios-project-to-bazel-a-real-world-experience/
on “XCSSET Mac Malware infects Xcode projects, performs UXSS attack on browsers”Submitted The Endgame for Cryptocurrency as a story · 21 points
HN discussion1. I missed this paper https://www.microsoft.com/en-us/research/uploads/prod/2018/0... when doing my own feature map compression research: https://liuliu.me/eyes/reduce-another-70-memory-usage-for-de... . Thanks for point it out! 2. Otherwise, most of these are obvious optimizations. One widely popular optimization (that I consider non-obvious) is ZeRO-Offload, in particularly the gradient sharding scheme (although…
Comment linking /eyes/reduce-another-70-memory-usage-for-deep-neural-network-training-over-mixed-precision-with-tensor-compression/
on “Techniques for Training Large Neural Networks”Submitted The Lesson from Private Ski Lesson, or How Money Cannot Buy Performance as a story · 11 points
HN discussionSeems to be based on iup that supports both Windows and Linux? http://webserver2.tecgraf.puc-rio.br/iup/ The new crop of immediate mode cross platform GUI libraries are more interesting (such as nuklear and Dear Imgui). I also did some experimentation with these libs a few days ago: https://liuliu.me/eyes/write-cross-platform-gui-in-swift-lik...
Comment linking /eyes/write-cross-platform-gui-in-swift-like-it-is-1998/
on “Puny GUI – A tiny cross platform GUI Kit in Janet”Submitted Write Cross-Platform GUI in Swift Like It Is 1998 as a story · 10 points
HN discussionHAAR Cascading based face detectors are subpar to neural-network based ones. It is better to just use TF.js and related face detector. These are faster and much more accurate. (I wrote JS-based face detector a decade ago: https://liuliu.me/eyes/javascript-face-detection-explained/ )
Comment linking /eyes/javascript-face-detection-explained/
on “Pico.js – A face-detection library in 200 lines of JavaScript (2018)”Submitted JavaScript Face Detection Explained as a story · 6 points
HN discussionWouldn't it be better to use a JavaScript face detector? Like http://liuliu.me/detect/detect.html I don't know the details about this algorithm though, no idea if you can get the proper position for the mustache.
Comment linking /detect/detect.html
on “Show HN: A Chrome extension that adds moustaches to every face on the web”Submitted Data Science Setup with Swift in 2021 as a story · 3 points
HN discussionSplitting CSV file into chunks and process them independently won't necessarily be wrong (although there are implementations out there that I won't name would, because they do guess). The trick however requires to scan twice: https://liuliu.me/eyes/loading-csv-file-at-the-speed-limit-o... Nice article otherwise!
Comment linking /eyes/loading-csv-file-at-the-speed-limit-of-the-nvme-storage/
on “Leveraging SIMD: Splitting CSV Files at 3Gb/S”Submitted A Core Data Alternative Crossed Platform to Linux as a story · 3 points
HN discussionIt seems to on average get about half the faces. http://liuliu.me/detect/detect.html#http%3A%2F%2Fwww.alexrei... http://liuliu.me/detect/detect.html#http%3A%2F%2Fkk.org%2Fct... It recognizes upside down faces though, which is impressive. http://liuliu.me/detect/detect.html#http%3A%2F%2Fwww.scifun.... Overall, a great demo.
Comment linking /detect/detect.html
on “Face Detection in JavaScript via Canvas”Submitted Migrating iOS Project to Bazel, a Real-World Experience as a story · 3 points
HN discussionTrouble with false positives : http://liuliu.me/detect/detect.html#http%3A%2F%2Ffarm1.stati...
Comment linking /detect/detect.html
on “Face Detection in JavaScript via Canvas”Submitted Stretch iPhone to Its Limit, a 2GiB Model That Can Draw Everything in Your Pock as a story · 2 points
HN discussion