# 2016 年成大秋季班分組 (第二次) ###### tags: `sysprog2016` :::info 主講人: [jserv](http://wiki.csie.ncku.edu.tw/User/jserv) / 課程討論區: [2016 年系統軟體課程](https://www.facebook.com/groups/system.software2016/) :mega: 返回「[進階電腦系統理論與實作](http://wiki.csie.ncku.edu.tw/sysprog/schedule)」課程進度表 ::: ## Policy * 在分組的共筆中,應該清楚標注 GitHub 和每週 YouTube 錄影連結 * Nov 18 安排分組報告,需要事先更新好共筆、GitHub 更新,還有相關的錄影。屆時會在課堂以 1.5x 或 2x 速度播放 ## Team1 (READY) - [ ] jserv (黃敬群) - [ ] louielu (呂紹榕) - [ ] c14006078 (吳彥寬) - [ ] Shaoyu-Chen (陳少宇) * 開發紀錄: [F9 microkernel & ARM hypervisor](https://hackmd.io/s/r16AUMbJe) * 針對低功耗 IoT 應用,打造一個高效、安全的 microkernel * 以過去發展的程式碼,如 MPU + address space 和 L4 API 等等,重新設計一個針對 ARM Cortex-M4 的 hypervisor,符合第三代 microkernel 的設計 ## Team2 (READY) - [ ] CheHsuan (林哲亘) - [ ] kevinbird61(瞿旭民) - [ ] SwimGlass (謝永勁) - [ ] carolc0708 (陳柔安) * 開發紀錄: [透過 SIMD 加速高斯模糊運算](/s/BJOTYoHge) * 延續 [開發紀錄: 使用 SSE/AVX 對圖檔作高斯模糊處理](https://hackmd.io/s/ByEmp4ike) 和 [SIMD + prefetching](https://hackmd.io/s/rk8ivCT0) 的成果,提供 Intel 架構 SSE/AVX 和 ARM 架構 NEON 的效能最佳化實做 * 可參考 OpenCV 程式碼,但不能直接複製 ## Team3 (READY) - [ ] 0140454 (吳勃興) - [ ] linachiu (邱婉菱) - [ ] kaizsv (林振凱) - [ ] HuangWenChen (陳鍠文) - [ ] aweimeow (陳威祐) * 開發紀錄: [以 SIMD 加速矩陣乘法](https://hackmd.io/s/Hk-llHEyx) * 持續改善效能,並針對記憶體操作提出改進方案 (注意 cache 的影響) * 研讀 [Memory Hierarchies and Optimizing Matrix Multiplication](https://people.eecs.berkeley.edu/~demmel/cs267_Spr99/Lectures/Lect_02_1999b.pdf), [Optimizing matrix multiplication](http://networks.cs.ucdavis.edu/~amitabha/optimizingMatrixMultiplication.pdf), [Optimizing Parallel Multiplication Operation for Rectangular and Transposed Matrices](http://hpc.pnl.gov/srumma/srumma-icpads.pdf) * 提出測試矩陣乘法正確性和效能之有效機制 * 設計類似 Matlab 語法的簡單程式語言,至少能銜接上述矩陣相乘。一併研究 [muparserSSE - A Math Expression Compiler](http://beltoforion.de/article.php?a=muparsersse&p=implementation) ## Team4 - [ ] kobe0308 (余孟勳 - [ ] youchihwang(王佑誌) - [ ] vjux (廖宥勛) - [ ] mingnus (蔡明宏) * 開發紀錄: [Concurrent Optimizing Brainfuck JIT compiler](https://hackmd.io/s/B1n0oiNxx) * 參考 [rdebath/Brainfuck](https://github.com/rdebath/Brainfuck) 的成果 * 可對照的實做: [Parallel Brainfuck](https://github.com/cmdli/parallel-brainfuck),[報告投影片](https://docs.google.com/presentation/d/1Y8uwsh_5bmUASmyRE4i3S4fL5OvA2Q92edivIXpsEaM/edit#slide=id.p) ## Team5 - [ ] andy19950 (吳庭安) - [ ] TotallyWrong (林鑫宏) - [ ] cjTsai3030 (蔡承哲) - [ ] f5120125 (張耕華) - [ ] diana0651 (何岱璇) * 開發紀錄: [Optimizing Brainfuck JIT Compiler](https://hackmd.io/MYEwpg7FBs0LQgEbHgFmgBjHAHARljgGY8cxpEBWECAQzGCA) * 延續 [Brainfuck JIT 編譯器最佳化研究](https://hackmd.io/s/HJjoxbvke) 和相關同學的成果,重新整理共筆,需要闡述編譯器原理、IR、JIT 編譯器設計,還有考慮到 cache 的議題 * 參考 [rdebath/Brainfuck](https://github.com/rdebath/Brainfuck) 的成果,思考進階的效能最佳化 * 參考 [The Brainf*ck Compiler Project](http://www.clifford.at/bfcpu/bfcomp.html),提出高階語言轉換到 Brainfuck 的機制,並且針對特定情況作效能改善 ## Team6 - [ ] tundergod (林文盛) - [ ] Tempojiji (邱靖吉) - [ ] jeff60907 (陳致佑) - [ ] chenan00 (王振安) * 開發紀錄: [針對多執行緒環境設計的 Memory allocator](/s/HkICAjeJg) * 延續 [SuperMalloc](http://supertech.csail.mit.edu/papers/Kuszmaul15.pdf) 成果,對比 Daniel Micay 的 [allocator](https://github.com/thestinger/allocator),並考慮 small/large/huge object 等情況 * 思考 [aggressive load balancing](https://github.com/thestinger/allocator/commit/d658d27116af63ca0c97b410024b09b3c54f55f6) 的效益,並且試圖延展 ## Team7 (READY) - [ ] HaoTse (鄭皓澤) - [ ] shelly4132 (賴劭芊) - [ ] HahaSula(黃呂源) - [ ] nekoneko (林建宏) - [ ] Fzzzz(陳易) - [ ] abba123(洪勤硯) * 開發紀錄: [MapReduce](https://hackmd.io/s/Hkb-lXkyg) * 設計更好的 thread pool (lock-free 版本),並重現 Google 論文裡面的排序動作 ## Team8 (READY) - [ ] LanKuDot (李昆憶) - [ ] ktvexe (劉亮谷) - [ ] judy66jo (周純靜) - [ ] JonSyuGithub (徐仲緯) * 開發紀錄: [server-framework](https://hackmd.io/s/B1s8hX1yg) * 整合 [cgi-server + facebooc](https://embedded2016.hackpad.com/ep/pad/static/EqEoM4o7nVv),設計更好的物件導向封裝 * 整合 freeboard 以提供豐富的網頁呈現,並分析過程中伺服器端的行為,提出效能改善機制 ## Team9 (READY) - [ ] petermouse (林軒毅) - [ ] heathcliffYang (楊惟晶) - [ ] janetwei (魏孜昀) * 開發紀錄: [Natural merge sort 在特定硬體的加速](https://hackmd.io/IwIwnAHGDGDsCsBaMYCmxEBYAmBDEi+EmiCqs+AzLnCLkA==) * 考慮 [Natural merge sort in C](http://codereview.stackexchange.com/questions/119377/natural-merge-sort-in-c),思考透過 clz 一類硬體指令加速,延續 [mergesort + branch prediction](https://hackmd.io/s/HJUFIeg1g) * 延續 [clz 應用](https://hackmd.io/s/S153n-G1g) 的成果,收集更多應用並且著手比較 `__builtin_clz` 和查表法對程式效能的影響。需要從計算機組織架構的觀點解釋 * 一併對照 [第18題: branch predictor](https://embedded2016.hackpad.com/2016q1-Week-2--Sc7AmIvN7EN),注意:裡頭的描述不全然正確 * 延伸閱讀: [Segmented Sort and Locality Sort](https://nvlabs.github.io/moderngpu/segsort.html) 和 [Mergesort](https://nvlabs.github.io/moderngpu/mergesort.html) ## Team10 - [ ] oiz5201618 (王紹華) - [ ] ponsheng (陳博聖) - [ ] hugikun999 (何俊逸) - [ ] workfunction (黃鏡清) - [ ] ierosodin (許耕福) - [ ] shengwen1997 (鄭聖文) - [ ] YuehChuan (張岳傳) * 開發紀錄: [無人車控制系統設計和實做](https://hackmd.io/CwIwjAzMDsBsCGBaAnCazHABzAAyJABNgBTRAJhIFZyBjaYQrMEwoA==) ## Team11 (READY) - [ ] vic85821 (張友誠) - [ ] jkrvivian (林京樺) - [ ] snoopy831002 (李中皓) - [ ] ruby0109 (施雨妏) * 開發紀錄: [concurrent B+ tree](https://hackmd.io/EYTgJiCs4AwLQDZgDNJwCwEYCG24gGMBmYOYAdmQQXWAuDAKA===?view) * 延續春季班 [concurrent B+ tree](https://embedded2016.hackpad.com/concurrent-B-tree-p459m7tm2Ea) 成果,回頭研究程式行為和深入效能分析 * 提出 lock contention 的解決機制 ## Team12 - [ ] raypan7 (潘祈睿) - [ ] finalallpass (顏子皓) - [ ] a530788140 (李儂偉) * 開發紀錄: [Concurrent Linked List 研究](https://hackmd.io/s/rkhBeeZyx) * 延伸閱讀: [lock-free/wait-free algorithms ](https://embedded2016.hackpad.com/lock-freewait-free-algorithms-jUNeD0UC94q) ## Team13 - [ ] green0413 (游玉青) - [ ] shouchengH (黃少呈) - [ ] SarahYuHanCheng (程鈺涵) - [ ] eeuserp (簡伯丞) * 開發紀錄: [Concurrent Rubi](https://hackmd.io/s/HkDeFrlxg) * 探討編譯器設計,以 DynASM 為例,解說 Rubi 運作原理,並提出 code refactoring 與效能改善機制 * 實做 concurrency 語法支援,不必跟 Ruby 相容
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.