Link-time optimization in GCC, part 3 – LibreOffice
After Firefox , I decided to look into LibreOffice performance with link time optimizations (LTO) and profile feedback (FDO). This post was ...
Every blog post that took off on Hacker News, ranked by the votes of its best submission. 6,949 posts.
After Firefox , I decided to look into LibreOffice performance with link time optimizations (LTO) and profile feedback (FDO). This post was ...
After a small delay * , the NetBSD Project is pleased to announce NetBSD 9.1 , the first feature and stability maintenance release of the netbsd-9 stable branch.
In the previous article we explored how the Go runtime bootstraps itself — how a Go binary goes from the operating system handing it control to your func main() running. During that bootstrap, one of the first things the runtime sets up is the memory allocator. And that’s what we’re going to explore today. Think of…
I’m working on the Roc Toolkit open-source project, a development kit for realtime audio streaming over the network. You can read more about the project in these two articles: 1, 2. We decided to implement a set of PulseAudio modules that will allow PulseAudio to use Roc as a network transport. Many Linux distros…
Editor's Note: An earlier version of this post appeared on Mason Chang's personal blog. For the past few months, I've been working on Project Silk which improves smoothness across ...
Learn common performance pitfalls and discover techniques to optimize your DISTINCT PostgreSQL queries. Read the full article on the Tiger Data blog.
Writing a storage engine for Postgres: an in-memory Table Access Method
Zookeeper is an Apache project for providing coordination services to distributed systems. ZooKeeper aims to provide a simple kernel (a fil...
The Go Execution Tracer (aka runtime/trace) was designed to achieve low enough overhead to be usable on “a server in production serving live traffic”. This is achieved by writing events into per-P buffers, using RDTSC for timestamps, and encoding into a relatively efficient binary format.
From the very beginning of Slack, MySQL was used as the storage engine for all our data. Slack operated MySQL servers in an active-active configuration. This is the story of how we changed our data storage architecture from the active-active clusters over to Vitess — a horizontal scaling system for MySQL. Vitess is…
Making performant dynamic manual memory management in C feel almost like garbage collection.
Microsoft has come out with a number of benchmarks and comparison papers championing the fact that Windows-NT is much better than Linux. I find such comparisons fascinating, but rather than rehash this argument, I've decided to create my own comparison. Not of Windows-NT vs. Linux, that's been done. But of Windows-NT…
On one of my visits to the Computer History Museum – and by the way this is an absolute must-visit place if you are ever in the San Francisco bay area – I saw an early Google server rack circa 1999 in the exhibits. Not too fancy, right? Maybe even… a
Site Isolation is a security feature in Chrome that offers additional protection against some types of security bugs. It uses Chrome's sandbox to make it harder for untrustworthy websites to access or steal information from your accounts on other websites.
If you have been paying attention on Twitter recently, you have likely seen some increasing numbers regarding the number of simultaneous connections the Phoenix web framework can handle. This post documents some of the techniques used to perform the benchmarks.
Previously in Jepsen , we discussed Redis . In this post, we’ll see MongoDB drop a phenomenal amount of data. See also: followup analyses of 2.6.7 and 3.4.0-rc3 .
There is a menace which is spreading like a disease throughout the Linux world, it is called systemd .