--- title: LisaChen (陳昕渝) categories: User --- # 簡介 - 國立成功大學 資訊工程所 114 級(2023~2025) - GitHub: [Lisa304](https://github.com/Lisa304) - HackMD: [Lisa304](https://hackmd.io/@Lisa304) # 2024 Linux 核心設計 自我評量 ## 成果發表和貢獻 **評分:3** 在這段時間內,我沒有實質性的公開演講或貢獻到 Linux 核心相關的專案。然而,我參加了一次與授課教師的約談,深入探討了一些核心問題並獲得了寶貴的指導。這些討論極大地幫助了我的學習和理解,但未能在公開平台上留下可見的足跡。這是我未來需要加強的領域。 ## 作業/隨堂測驗 **評分:10** 在這過程中我完成第一週作業中指定的佇列操作,並成功整合了 list_sort.c 程式碼。第二份作業中的五個測驗題我也閱讀並執行了程式碼,並為運作流程畫了 Graphviz 圖例,最後成功整合了 merge sort 命令進入 lab0。第三份作業是將家喻戶曉的井字遊戲融入 list_sort.c 專案當中,我有成功的融合並且執行遊戲。第五份作業是對於自己的評估,我在其中完成了〈因為自動飲料機而延畢的那一年〉的閱讀並寫下心得,也上了 CS/APP 3/e 到第二章節的課程內容。 我在作業和隨堂測驗中都投入了大量時間和精力,並詳細記錄了我的開發過程和結果,所以自我評分 10 分,在下方附上作業連結。 作業共筆: - [lab0-c](https://hackmd.io/@Lisa304/HyLx5qthp) - [tic-tac-toe](https://hackmd.io/@Lisa304/HyLx5qthp) - [assessment](https://hackmd.io/@Lisa304/HkyCfjPeA) 測驗共筆: - [quiz1+2](https://hackmd.io/@Lisa304/HkcBeTrpa) ## 期末專題 **評分:10** 我的期末專題是關於 LLama 效能提升的量化分析與評估,具體內容和成果記錄在[assessment](https://hackmd.io/@Lisa304/HkyCfjPeA),本來是應該要放在老師開設的網頁,但因為我尚未被分配到,所以我先放在作業五的頁面。 其中有四個 TODO: - TODO: 實作程式碼 IEEE 754 浮點數乘以 2 - TODO: 閱讀 https://justine.lol/matmul/ 並紀錄問題,定位出效能瓶頸 - TODO: 執行 https://github.com/jart/matmul (針對 x86-64 和 Intel MKL) - TODO: 目標是理解 LLaMA 推理過程中的各式效能議題,予以量化,並針對現有的效能改進方案進行分析 我依序將其盡我所能的完成,了解到 IEEE 754 這個二進位浮點數算術標準如何透過五個步驟,決定三部分 Sign bit, Exponent, Mantissa 的賦值。並且在不能使用 * 乘法運算的情況下,完成程式碼所要求的乘 2 功能,並且依據老師的要求在使用 union 來更進一步的改進程式碼。 再來是閱讀創建 llamafile 的作者所寫的文章,了解她使用多個硬體分析 llamafile 以及 llama.cpp 效能的實驗,作者在其中分析了每種硬體能夠更進一步的原因。最後一個部分就是實作 llamafile 以及 llama.cpp 的實驗,我在還原實驗的過程中,更是做了額外的實驗,對比不同 toknizer 的斷詞結果與效能數值的影響。 開發過程中,我對自己的方法感到不安,或許做實驗本來就不像國中寫考卷有正確的答案,我對於自己投入的時間心力,以及最後的完成度感到滿意,所以自我評分 10 分。 ## 與授課教師的互動 **評分:10** 在課程期間,我與授課教師進行了一次重要的約談,這些討論不僅解答了我在學習過程中的疑問,也啟發了我對課程內容的更深理解。在 5/11 (六) 下午三點,我與授課教師討論了期末專題選定的問題,老師給了我關於 LLama 效能分析的題目,並且列了 4 項 TODO。其中第一項 TODO 是完成程式碼,當我完成後主動向老師報告,而老師也給予我修改建議。這些互動增進了我與授課教師之間的交流,也顯示了我在學習過程中的積極主動,所以自我評分 10 分。 ## 所見所聞所感 **評分:9** 在閱讀了〈因為自動飲料機而延畢的那一年〉後,我深刻反思了自己在本課程中的投入和學習狀況。這篇文章讓我認識到,專注和投入是成功的關鍵。在本課程中,我全力以赴,每一項作業和專題都盡最大努力去完成,這些努力也得到了應有的回報。 ## 學習回顧 **評分:10** 作為研究生,我向實驗室指導教授發送學習回顧信件,並將授課教師列入副本。以下是 5 月的回顧內容: 陳昕渝於 Linux 核心實作課程的五月份學習回顧 老師您好: 學生陳昕渝在本學期選修黃敬群老師開設於資訊工程所的「Linux 核心實作」課程,在期末專題中投入了大量時間,並希望向您匯報我的學習進度。 我的期末專題著重於探討 llama 模型的效能分析。在專題實作過程中,我使用了 Linux 環境運行 llamafile 及 llama.cpp 這兩個工具,這些工具能夠在本地運行模型並加速其執行速度。 在研究中,我深入了解了 GGUF 檔案格式,這是一個由 llama.cpp 的作者開發的檔案格式。GGUF 支援多種量化模型格式,例如 q4、q8、fp16 等。這些不同的量化方法雖然會犧牲一些運算細節,但因為模型變得更輕量化,能夠顯著提升執行效率。 為了評估模型效能,我自行設計了 prompt 和 eval 的評估方法,並努力還原並分析 llamafile 的實驗結果。我相信這些技能和經驗將在我未來的碩士論文研究中發揮重要作用。 感謝您在百忙之中抽空閱讀此信。期待能夠在未來的學習和研究中繼續得到您的指導。 Sincerely, 陳昕渝 敬上 這些學習回顧展示了我在每月的學習進展和持續努力,也為指導教授和授課教師提供了的學習紀錄,自我評分 10 分。 ## 最終評分: 9 分