RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

大模型筆記之gem5運行模型框架LLama介紹

處理器與AI芯片 ? 來源:處理器與AI芯片 ? 2024-01-22 09:10 ? 次閱讀

一 LLama.cpp

LLama.cpp 支持x86,arm,gpu的編譯。

github下載llama.cpp

https://github.com/ggerganov/llama.cpp.git

2. gem5支持arm架構(gòu)比較好,所以我們使用編譯LLama.cpp。

以下是我對Makefile的修改

e5008006-b8c2-11ee-8b88-92fbcf53809c.png

開始編譯:

make UNAME_M=aarch64

編譯會使用到aarch64-linux-gnu-gcc-10,編譯成功可以生成一個main 文件,這里我把main重命名成main_arm_backup了。

可以使用file main查看一下文件:

e5112082-b8c2-11ee-8b88-92fbcf53809c.png

3. 下載一個大模型的model到llama.cpp/models的目錄下,這里我下載了llama-2-7b-chat.Q2_K.gguf。

這個模型2bit量化,跑起來不到3G的內(nèi)存。

GGML_TYPE_Q2_K - "type-1" 2-bit quantization in super-blocks containing 16 blocks, each block having 16 weight. Block scales and mins are quantized with 4 bits. This ends up effectively using 2.5625 bits per weight (bpw)

e51b5ed0-b8c2-11ee-8b88-92fbcf53809c.png

4.此時我們可以本地運行以下main和模型,我的prompt是How are you

./main -m ./models/llama-2-7b-chat.Q2_K.gguf -p "How are you"-n 16

下圖最下面一行就是模型自動生成的

e522f672-b8c2-11ee-8b88-92fbcf53809c.png

二 gem5

gem5下載編譯好后,我們可以使用gem5.fast運行模型了。

build/ARM/gem5.fast

--outdir=./m5out/llm_9

./configs/example/se.py -c

$LLAMA_path/llama.cpp/main-arm

'--options=-m $LLAMA_path/llama-2-7b-chat.Q2_K.gguf -p Hi -n 16'

--cpu-type=ArmAtomicSimpleCPU --mem-size=8GB -n 8

此時我的prompt是Hi,預期是n=8,跑8核。

e54e8404-b8c2-11ee-8b88-92fbcf53809c.png

上圖是gem5運行大模型時生成的simout,我增加了AtomicCPU 運行指令數(shù)量的打印,這是在gem5的改動。

如果你下載的是gem5的源碼,那么現(xiàn)在運行起來應該只是最前面大模型的輸出。

模型的回答是Hi,I'm a30-year-old male, and 但是我預期的是8核,實際上運行起來:

e56033a2-b8c2-11ee-8b88-92fbcf53809c.png

可以看出來,實際上只跑起來4核,定位后發(fā)現(xiàn),模型默認是4核,需要增加-t 8選項,即threadnumber設置成8,下面的紅色標注的command.

build/ARM/gem5.fast

--outdir=./m5out/llm_9

./configs/example/se.py -c

$LLAMA_path/llama.cpp/main-arm

'--options=-m$LLAMA_path/llama-2-7b-chat.Q2_K.gguf -p Hi -n 16 -t 8'

--cpu-type=ArmAtomicSimpleCPU --mem-size=8GB -n8

e5770ef6-b8c2-11ee-8b88-92fbcf53809c.png

如上圖所示,8核都跑起來了,處理到Hi這個token的時候,CPU0執(zhí)行了2.9 Billion指令,相對于4核時的5.4 Billion約減少了一半。







審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • ARM
    ARM
    +關注

    關注

    134

    文章

    9084

    瀏覽量

    367378
  • gpu
    gpu
    +關注

    關注

    28

    文章

    4729

    瀏覽量

    128890
  • Linux系統(tǒng)

    關注

    4

    文章

    593

    瀏覽量

    27392
  • 大模型
    +關注

    關注

    2

    文章

    2423

    瀏覽量

    2640

原文標題:大模型筆記【3】 gem5 運行模型框架LLama

文章出處:【微信號:處理器與AI芯片,微信公眾號:處理器與AI芯片】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    RISC-V 跑大模型(三):LLaMA中文擴展

    這是RISC-V跑大模型系列的第三篇文章,前面我們?yōu)榇蠹?b class='flag-5'>介紹了如何在RISC-V下運行LLaMA,本篇我們將會介紹如何為
    的頭像 發(fā)表于 07-17 17:15 ?808次閱讀
    RISC-V 跑大<b class='flag-5'>模型</b>(三):<b class='flag-5'>LLaMA</b>中文擴展

    【飛騰派4G版免費試用】仙女姐姐的嵌入式實驗室五~LLaMA.cpp及3B“小模型”O(jiān)penBuddy-StableLM-3B

    ,根據(jù)LLaMA官方的介紹,要想運行模型需要30GB左右顯存的顯卡支持,這是邊緣終端甚至個人電腦難以做到的,后來,GitHub上的一位開發(fā)者ggerganov發(fā)布了
    發(fā)表于 12-22 10:18

    gem5中支持Arm TME的工作資料推薦

    1、在gem5里支持armv9 Transactional Memory (TME)擴展微處理器的順序執(zhí)行性能到了停滯期,產(chǎn)業(yè)界將通過增加核心數(shù)量來提升更多的性能。結(jié)果就是軟件編程從純順序編程模型
    發(fā)表于 08-05 15:14

    SECS/GEM標準模型分析及應用

    SECS/GEM是半導體自動化生產(chǎn)中廣泛采用的一個行業(yè)標準。首先介紹了SECS/GEM標準的整體框架,并分析了其行業(yè)發(fā)展狀況,然后依次說明了SECSⅠ/Ⅱ、
    發(fā)表于 08-01 14:25 ?72次下載
    SECS/<b class='flag-5'>GEM</b>標準<b class='flag-5'>模型</b>分析及應用

    Gem5 Arm Fullsystem仿真

    如果是基于X86 Ubuntu系統(tǒng)模擬gem5 arch,制作disk image比較簡單,可以git clone gem5 resource, 在spec2017文件夾
    的頭像 發(fā)表于 01-04 14:11 ?2152次閱讀

    Meta發(fā)布開源大模型Code Llama 70B

    近日,Meta宣布推出了一款新的開源大模型Code Llama 70B,這是其“Code Llama家族中體量最大、性能最好的模型版本”。這款新模型
    的頭像 發(fā)表于 01-31 09:24 ?920次閱讀

    Meta Llama 3基礎模型現(xiàn)已在亞馬遜云科技正式可用

    亞馬遜云科技近日宣布,Meta公司最新發(fā)布的兩款Llama 3基礎模型——Llama 3 8B和Llama 3 70B,現(xiàn)已正式上線并集成至Amazon SageMaker JumpS
    的頭像 發(fā)表于 05-09 10:39 ?394次閱讀

    英偉達發(fā)布AI模型 Llama-3.1-Nemotron-51B AI模型

    速度比原70B大模型提升2.2倍,具備更準確和更高效的運算效率;能夠大幅降低運行成本。 ? ? ? 通過NAS技術微調(diào);大幅降低了內(nèi)存消耗、計算復雜性;Llama-3.1-Nemotron-51B AI
    的頭像 發(fā)表于 09-26 17:30 ?604次閱讀

    亞馬遜云科技正式上線Meta Llama 3.2模型

    亞馬遜云科技宣布,Meta的新一代模型Llama 3.2,包括其首款多模態(tài)模型,現(xiàn)已在Amazon Bedrock和Amazon SageMaker中正式可用。
    的頭像 發(fā)表于 10-11 09:20 ?506次閱讀

    亞馬遜云科技上線Meta Llama 3.2模型

    亞馬遜云科技近日宣布,Meta公司的新一代模型Llama 3.2已在其平臺上正式上線。該模型包括Meta首款多模態(tài)模型,現(xiàn)已在Amazon Bedrock和Amazon SageMak
    的頭像 發(fā)表于 10-11 18:08 ?444次閱讀

    Llama 3 語言模型應用

    在人工智能領域,語言模型的發(fā)展一直是研究的熱點。隨著技術的不斷進步,我們見證了從簡單的關鍵詞匹配到復雜的上下文理解的轉(zhuǎn)變。 一、Llama 3 語言模型的核心功能 上下文理解 :Llama
    的頭像 發(fā)表于 10-27 14:15 ?263次閱讀

    Llama 3 模型訓練技巧

    Llama 3 模型,假設是指一個先進的人工智能模型,可能是一個虛構(gòu)的或者是一個特定領域的術語。 1. 數(shù)據(jù)預處理 數(shù)據(jù)是任何機器學習模型的基礎。在訓練之前,確保數(shù)據(jù)質(zhì)量至關重要。 數(shù)
    的頭像 發(fā)表于 10-27 14:24 ?302次閱讀

    Meta發(fā)布Llama 3.2量化版模型

    近日,Meta在開源Llama 3.2的1B與3B模型后,再次為人工智能領域帶來了新進展。10月24日,Meta正式推出了這兩個模型的量化版本,旨在進一步優(yōu)化模型性能,拓寬其應用場景。
    的頭像 發(fā)表于 10-29 11:05 ?374次閱讀

    用Ollama輕松搞定Llama 3.2 Vision模型本地部署

    Ollama 是一個開源的大語言模型服務工具,它的核心目的是簡化大語言模型(LLMs)的本地部署和運行過程,請參考《Gemma 2+Ollama在算力魔方上幫你在LeetCode解題》,一條命令完成
    的頭像 發(fā)表于 11-23 17:22 ?922次閱讀
    用Ollama輕松搞定<b class='flag-5'>Llama</b> 3.2 Vision<b class='flag-5'>模型</b>本地部署

    大語言模型開發(fā)框架是什么

    大語言模型開發(fā)框架是指用于訓練、推理和部署大型語言模型的軟件工具和庫。下面,AI部落小編為您介紹大語言模型開發(fā)
    的頭像 發(fā)表于 12-06 10:28 ?115次閱讀
    RM新时代网站-首页