Data structure layout automation
Let the computer handle the data layout. Focus on the access
- When we run a SQL create statement, we specify fields we want in the database. What if the computer could infer the fields we want? And decide how to store them on the file system?
- Analyse code access patterns and work out the best layout that keeps the data compact together in L1, L2, caches. This may lead to strange data structures.
- Would be nice to be able to mark an access of data as persistent and have it stored persistently, with write ahead logging automatically. As long as I can get the data back out, it doesn't matter how it is stored.
- If we have a many-to-many relationship, it might choose one storage mechanism over another.
+[項目]
我讀了一篇文章,說指令選擇方面的性能佔總性能的10%。
剩下的就是緩存行爲。如果您遇到高速緩存未命中的情況,則會降低所有速度。計算機應該能夠分析我們的代碼並弄清楚如何安排它,以便數據始終位於緩存中。通過簡單地將屬於一起的數據放在一起。
I read an article that said performance with regard to instruction selection is 10% of total performance.
The rest is cache behaviour. If you get a cache miss, you slow everything down. Computers should be able to analyse our code and work out how to arrange it so that the data is always in the cache. By simply placing data together which belong together.