Kakashi's Notes

修其本而末自應

Link Time Optimization 小記

Preface最近一直在鼓搗 Python3 的手動編譯,偶然發現這篇文章介紹 LTO 的文章蠻有趣的,網址在 https://johnysswlab.com/link-time-optimizations-new-way-to-do-compiler-optimizations/ 算是 compiler LTO 概念的入門文章,一開始先跟你說了 compiler 針對一個蠻小的 code ......

Paper 閱後心得: The Tail at Scale

前言最近常在看一個 youtube Vivek Haldar 讀 paper 順便幫忙畫重點,正好看他又翻到這篇很有名的 paper: The Tail at Scale,其第一作者更是大名鼎鼎的 Jeff Dean, 事隔多年再加上在這一行也幹了一陣子,其實更佩服 google 的論文裡面提到的一些在實作上面的方法,而不是只有學術上面的數據,重新看了這篇,也讓我回憶起以前為了要消除 tai......

Random Scheduler Note

Random Scheduler NoteGolang Scheduler最近因為 golang 討論區的一篇文章,又簡單複習了下 golang scheduler,其實這個 scheduler 設計上面算是蠻簡單的,具體的內容其實很多文章都寫過了,而特點就是讓多個 goroutines 跑在 OS thread 上,是個 M:N 的分配,盡量減少了 OS thread 的建立,進而減少 O......

Golang Taipei Gathering 分享 - Golang Race Detector under the hood

Preface這個月初在 Golang Taipei Gathering 分享了最近的讀書心得,Go race detector 底層到底是怎麼實作的,其實主要是有在追一個大神 Dmitry Vyukov 的推特,而他一直以來都貢獻了很多 dynamic tools 像是 AddressSanitizer,MemorySanitizer 和 ThreadSanitizer,另外還有一些 ru......

Werner Vogels 談 Amazon 怎麼從 Monolith 到 Service-based Architecture

Preface這是一篇 2006 年 AWS CTO Werner Vogels 的 interview,收錄在ACM queue 上面,過了將近 15 年後來看,令我特別有感觸,也非常佩服我偶像 Werner Vogels 的真知灼見。 我特別驚呀的是在 DevOps, Microservice 這些詞誕生前,就有了這則訪問,而這篇訪談又環繞在這幾點上面,談論不管在團隊或是技術架構上,Am......
AWS

Integer Encoding Algorithm 筆記

Integer Encoding Algorithm 筆記現今的電腦在 CPU 和 Memory 的速度上有極大的差距,而 Memory 到 Disk 上面的差距就更大了,所以有許多的壓縮演算法被套用在不同的應用上,例如 IoT, big data 和 database 之類的, 一個是為了節省儲存資料的空間,還有是小批的資料要 load 進 Memory 裡面處理也會比較快,這篇筆記探討的......

Golang 的 string interning 技巧

String Interning最近在 twitter 上面看到一篇推文 Hacked string interning profiler for #golang:https://t.co/EB2uJwzvtxAllows to understand where to use interning & exact savings for heap size/garbage rate. ......

學習使用 compiler vector extension 去寫 SIMD 程式

compiler vector extension 好棒棒

最近強者我 Tead lead Champ Yen 在公司內部做了一次 experience sharing,內容非常的精彩,分享了怎麼使用 compiler vector extensions 去寫 SIMD 的 program,進而將 program 的效率提升,並且可以產出 portable 的 program。 SIMD 到底是什麼SIMD 的全名是 single instructi......

google 的 swisstable hashmap 筆記

Matt Kulukundis 在 cppcon 2017 年給的 talk,我覺得這個 talk 講得非常好,主要是說明如何使用 Swiss Tables ,設計出更符合當代硬體架構的 hash map (flat hash map),google 內部大量採用這個改寫 std:unordered_map,我看完這個之後有點觀念被刷,覺得還蠻震驚的。 這個 hash map 的實作考量到了......

Coscup sharing - How I contribute golang OSS

Coscup is an annual conference held by Taiwan open source communities. This year, I participated in Coscup as a speaker and gave the talk about how I contribute golang OSS. It’s a really good expe......