--- tags: linux2023 --- # 2023q1 Homework5 (assessment) contributed by < [chiangkd](https://github.com/chiangkd) > ## 檢視前 5 週學習情況 ### lab0 - [整合 tiny-web-server](https://hackmd.io/@sysprog/linux2023-lab0/%2F%40sysprog%2Flinux2023-lab0-c) 部份尚未進行 ### fibdrv 和老師進行一對一面談後老師有提到幾點關於作業 `fibdrv` 可以探討的部份 - 多執行緒 - 利用 hash table 紀錄已經計算過的值 當前在 [2023q1 Homework3 (fibdrv)](https://hackmd.io/@chiangkd/2023spring-fibdrv#2023q1-Homework3-fibdrv) 已進行多執行緒實作及驗證 (包含多執行緒的 hashtable 實作),在第一次的計算中會增加插入 hash table 這個過程的時間,不過在第二次之後的取用都會接近常數時間 >在多執行緒的測量上大部分為自己的想法 當前正在進行實作 fast-doubling 的 recursion 版本,並在遞迴的過程中去查找 hashtable。 ### quiz 目前 quiz 檢討進度較為落後 - quiz 開始不限期之後一有時間我反而會選擇把卡關的問題先逐步解決 (上述 `fibdrv` 探討的部份沒有搞定總覺的心很癢 QQ,想優先處理) ### 檢討 - 跟自己一開始修課給自己的期許 (跟上課程進度) 其實相差很大,但還是不想為了趕進度就把一些東西混過去,就算看了課堂其他同學的筆記也不希望只是 "喔~原來是這樣做的",而是回顧自己到底漏掉了什麼東西沒看到 - 鄰近畢業季,在時間管理即分配上自認為做的沒有很好,常常把事情壓在 deadline 導致成效不彰。 ## 想問的問題 在 `fibdrv` 上已有初步實作多執行緒的計算 (透過 mutex),但我該如何正確的測試這個核心模組值真的在多執行緒的執行下是高效的,當前在我的[作業筆記中](https://hackmd.io/@chiangkd/2023spring-fibdrv#%E4%BD%BF%E7%94%A8-hashtable-%E7%B4%80%E9%8C%84%E4%BB%A5%E8%A8%88%E7%AE%97%E9%81%8E%E7%9A%84%E5%80%BC),是以十個執行緒各自計算 $Fib(1000)$,但不確定這樣是否合理。 ## 紀錄閱讀〈[因為自動飲料機而延畢的那一年](http://opass.logdown.com/posts/1273243-the-story-of-auto-beverage-machine-1)〉的啟發