Konata
- Konata é um visualizador de pipeline de instruções para formatos Onikiri2-Kanata/Gem5-O3PipeView.
- A apresentação do tutorial ASPLOS 2018 Learning Gem5 está aqui
- O formato Onikiri2-Kanata é descrito aqui. Pode representar um comportamento de pipeline mais detalhado do que Gem5-O3PipeView.
Instalação
Existem duas maneiras de iniciar o Konata. Se você não conseguir iniciar um binário pré-construído, tente o segundo caminho.
- Extraia um arquivo e execute um arquivo executável (konata.exe ou konata).
- Binários pré-construídos estão disponíveis aqui.
- Inicie a partir deste repositório.
- Instale o node.js em https://nodejs.org
- Clone este repositório.
- Inicie install.bat (Windows) ou install.sh (Linux/MacOS).
- Inicie o Konata em konata.vbs (Windows) ou konata.sh (Linux/MacOS).
Uso
Básico
- Gere um log de rastreamento do gem5 com o modelo de CPU O3
- Execute gem5 com os seguintes sinalizadores
- Este exemplo é de http://www.m5sim.org/Visualization
$ ./build/ARM/gem5.opt
--debug-flags=O3PipeView
--debug-start=<first tick of interest>
--debug-file=trace.out
configs/example/se.py
--cpu-type=detailed
--caches -c <path to binary>
-m <last cycle of interest>
- Carregue um "trace.out" gerado no Konata
- a partir de um menu em uma janela ou usando arrastar e soltar
- Se você usar
O3CPUAll
e também O3PipeView
da seguinte forma, o Konata mostrará um log de CPU mais detalhado e visualizará a dependência entre as instruções. --debug-flags=O3PipeView,O3CPUAll
Teclado
- roda do mouse para cima, tecla para cima: rolar para cima
- roda do mouse para baixo, tecla para baixo: rolar para baixo
- ctrl + roda do mouse para cima, tecla "+", ctrl+tecla para cima: aumenta o zoom
- ctrl + roda do mouse para baixo, tecla "-", ctrl + tecla para baixo: diminuir o zoom
- ctrl + f, F3, shift+F3: encontre uma string
- F1, ctrl+shift+p: abre uma paleta de comandos
Pontas
- Se você perder pipelines no painel direito, poderá passar para pipelines clicando em "Ajustar posição" no menu do botão direito.
- Você pode comparar visualmente dois traços da seguinte maneira:
- Carregar dois arquivos de rastreamento
- Clique com o botão direito e selecione "Escola sincronizada" e "Modo transparente"
- Clique com o botão direito e selecione um esquema de cores
- Vá para outra guia e ajuste uma posição com o modo transparente
- Se você não conseguir iniciar o Konata, tente instalar os seguintes tempos de execução (ou tente instalar o Google Chrome mais recente, porque ele usa os mesmos tempos de execução).
sudo apt install
libgconf-2-4
libgtk-3-0
libxss1
libnss3
libasound2
libx11-xcb1
libcanberra-gtk3-module
libgbm-dev
- No modo
O3CPUAll
, o Konata associa cada linha trace.out a cada instrução rastreando [sn:<serial number>]
. Se você gerar um log personalizado com as informações de série acima, o Konata mostrará seu log personalizado.
Desenvolvimento
- Instale tempos de execução dependentes da seguinte maneira ou use o Dockerfile incluído em uma árvore de origem
# Install node.js/npm
sudo apt install nodejs
# Install electron/electron-packager
# Since electron is huge, they are installed globally.
npm -g install electron
npm -g install electron-packager
# Run and build
make init # Setup libraries
make # Run Konata
make pack # Build & pack Konata for Windows/Linux/Mac
Licença
Copyright (C) 2016-2022 Ryota Shioya [email protected]
Este aplicativo é lançado sob a licença BSD de 3 cláusulas, consulte LICENSE.md. Este aplicativo agrupa o ELECTRON e muitos pacotes de terceiros de acordo com as licenças apresentadas em THIRD-PARTY-LICENSES.md.