Skip to content
Snippets Groups Projects
  • Yaman Umuroglu's avatar
    a65e08b0
    Custom op notebook (#283) · a65e08b0
    Yaman Umuroglu authored
    
    * [Notebook] start custom op nb
    
    * [Notebook] update custom_op notebook
    
    * [Notebook] update the custom op notebook to reflect new reg system
    
    * [Notebook] Added more descriptive text into the notebook (#278)
    
    * [Web] update publications
    
    * Build step: measure rtlsim performance (#262)
    
    * [Build] introduce step_measure_rtlsim_performance
    
    * [Docs] document the rtlsim performance step
    
    * [Docs] add comments on CPU/RAM/storage recommandations
    
    * [Build, Test] enable rtlsim perf as part of build test too
    
    * [Build] print where intermediate outputs are generated
    
    * [Docs] remove ghpages content, add note
    
    * [Docker] use -c continue for build_custom mode
    
    * [Docs] minor fixes
    
    * Driver data packing + improvements (#261)
    
    * [Driver] add driver_base.py as own template file + comments
    
    * [Driver] also move validation to won template + use in transform
    
    * [Driver] more comments
    
    * [Driver] suggested updates from PYNQ team + async mode exec_on_buffers
    
    * [Driver] allow smaller batchsize in execute_on_buffers
    
    * [Driver] optimize buffer alloc a bit
    
    * [Driver] wait condition fix
    
    * [Deps] update finn-base
    
    * [Deps] update finn-base
    
    * [Driver] enable fast_mode, expose more benchmarks
    
    * [Deps] update finn-base
    
    * [Driver] handle case with no rt weights
    
    * [Build] auto-exit build_custom if no errors
    
    * [Driver] get Alveo clock during test
    
    * Add report_utilization to stitched project tcl script (#243)
    
    * [Vitis] use -mode batch for report gen Vivado launch
    
    * Feature/cybersecurity notebook (#259)
    
    * Created cybersecurity notebook and downloaded data with wget
    
    * Reorganized the cybersecurity notebook
    
    * Read the entire dataset as a pytorch tensor and trained a simple MLP on the UNSW_NB15 dataset
    
    * small changes to markdown
    
    * Training and testing have the same integer encoding
    
    * Added debugger tool
    
    * added loss visualization
    
    * aded 1hot encoder and separated dataloader
    
    Added 1-hot encoder with scikit learn.
    Seperated the dataloader into a python file.
    
    * changes to get 99.998% accuracy
    
    * changed loss plot
    
    * accuracy at 70% after 50 epochs
    
    However, loss is not ok
    
    * got 75% accuracy
    
    * see loss
    
    * added scheduled statistics
    
    * added iterator over all possible parameters
    
    * updates on automation
    
    debugging model error
    
    * Delete cybersecurity-checkpoint.ipynb
    
    * Delete cybersecurity_2-checkpoint.ipynb
    
    * Delete exemplofixe-checkpoint.ipynb
    
    * Delete UNSW_NB15_testing-set.csv
    
    * Delete UNSW_NB15_train.csv
    
    * Delete UNSW_NB15_training-set.csv
    
    * Delete UNSW_NB15_val.csv
    
    * general cleanup
    
    * general cleanup
    
    * updates with 75.7238% accuracy
    
    * added quantization of the dataset
    
    * debugging the quantization of the dataset
    
    * added plots for the debugging
    
    * debugging the quantization. Show the differences
    
    * update debugging
    
    * updates on debugging
    
    * updates on debugging quantization
    
    * updates on debug, uint32 df added
    
    * updates on debugging
    
    * added 2 pictures for the debugging
    
    * Added quantization of the dataset
    
    * aded results for training the model with the quantized dataset
    
    * added quantization of the dataset
    
    * added new notebook with model definition with brevitas
    
    * cleaning up documents
    
    * modified the model definition
    
    * Changed the loss function
    
    * Added debug with pdb
    
    * Successfully created neural network with Brevitas
    
    * Correctly quantize the dataset
    
    * Added export of onnx model
    
    * Added FINN validation of the Brevitas model
    
    * improved dataloader
    
    * general cleanup
    
    * General Cleanup
    
    * General Cleanup
    
    * Completed verifying the FINN model against Brevitas
    
    * Added new layer to MLP - Debugging
    
    * verified that the MLP model with new layer (QuantIdentity) outputs the same in Brevitas and in FINN for all 82332 test inputs
    
    * verified that the MLP model with new layer (QuantIdentity) outputs the same in Brevitas and in FINN for all 82332 test inputs
    
    * verified that model with new layer (QuantIdentity) outputs the same in Brevitas and in FINN for all 82332 inputs
    
    * verified that model with new layer and input shifted to accept {-1,1}, outputs the same in Brevitas (input is in {-1,+1}) and in FINN (input is in {-1,+1})  for the 82332 inputs
    
    * General cleanup and added text
    
    * General cleanup: improved text
    
    * General cleanup: fixed text typos
    
    * General cleanup: Added text
    
    * Delete cybersecurity.ipynb
    
    * Delete dataloader.py
    
    * Rename cybersecurity_Brevitas_1bit.ipynb to 1-cybersecurity-Brevitas-1bit.ipynb
    
    * Rename cybersecurity_Brevitas_Verification.ipynb to 2-cybersecurity-finn-verification.ipynb
    
    * Added the last notebook
    
    * Added last notebook describing the finn build
    
    * Added changed parameters to see differences
    
    * Added changed parameters and added text
    
    * Fixed typo
    
    * [Notebooks] reorganize into folders, add README for cybsec
    
    * [Notebook] add license header and refs to cybsec dataset quantizer
    
    * [Notebooks] rename cybsec notebook files
    
    * [Notebook] first pass thru cybsec part 1
    
    * [Notebook] refactor more of cybsec part 1
    
    * [Notebook] add option to use pretrained weights
    
    * fixed outline and typo
    
    * [Notebook] update cybsec notebook #2 and gitignore
    
    * [Notebook] start refactoring cybsec part 3
    
    * [ConvertToHLS] allow out_scale=2 for bipolar MT
    
    * [Build] add alternative set of steps for estimation only
    
    * [Transform] attempt to handle padding for IODMAs
    
    * [Transform] explicitly ignore IODMA nodes for InsertDWC
    
    * [Notebook] full pass over cybsec notebook 3
    
    * [Util] move vivado utils into finn-base
    
    * fixed outline
    
    * [HLSCustomOp] better err msg on ipgen failure
    
    Co-authored-by: default avatarAlina Vasilciuc <alinav@xlnx.xilinx.com>
    Co-authored-by: default avatarYaman Umuroglu <yamanu@xilinx.com>
    
    * [Notebook] add README, remove mobilenet notebook
    
    * [Docs] round of updates
    
    * [Docs] make stack image local
    
    * [Docs] apidocs updates
    
    * [Docs] update README for v0.5b
    
    * [Release] merge dev into master for v0.5b
    
    * [Docs] bring back missing img
    
    * [Docs] bring back missing images
    
    * Switch hlslib comparison functions (#263)
    
    * [Test] add lfc to end2end tests
    
    * [Deps] update hlslib to get comp:: fxns
    
    * [HLS] use comp:: comparators instead of std::
    
    * [VVAU] hlslib now uses inner prod dim instead of K
    
    * [Thres] manually workaround vivado_hls bug for T[0][0]=0
    
    * [Infra] add .vscode to .gitignore
    
    * [Build] separate HLS codegen and ipgen steps (#265)
    
    * [Docs] first version of developer docs
    
    * [Notebook] fix broken resource paths
    
    * Fix Im2Col attributes for newer finn-base (#276)
    
    * [Deps] update finn-base
    
    * [Refactor] fix im2col props for updated finn-base
    
    * [Docs ] Add FAQ page to the Documentation (#273)
    
    * [Docs] Add FAQ page into the Docs
    
    * [Docs] some minor text format changes.
    
    * [Docs] updates to FAQ
    
    Co-authored-by: default avatarYaman Umuroglu <yaman.umuroglu@xilinx.com>
    
    * [Notebook] Added more descriptive text into the notebook
    
    * Fix ZCU102 support in Vivado shell project (#280)
    
    * [ConvertToHLS] fix conversion for bipolar outputs
    
    * [Notebook] updates to custom op notebook
    
    Co-authored-by: default avatarYaman Umuroglu <yamanu@xilinx.com>
    Co-authored-by: default avatarTobi-Alonso <tobi.alonso@gmail.com>
    Co-authored-by: default avataralinavalinav <60705229+alinavalinav@users.noreply.github.com>
    Co-authored-by: default avatarAlina Vasilciuc <alinav@xlnx.xilinx.com>
    Co-authored-by: default avatarYaman Umuroglu <yaman.umuroglu@xilinx.com>
    Co-authored-by: default avatarFelix Jentzsch <45395194+fpjentzsch@users.noreply.github.com>
    
    Co-authored-by: default avatarjalezeta <51440887+jalezeta@users.noreply.github.com>
    Co-authored-by: default avatarTobi-Alonso <tobi.alonso@gmail.com>
    Co-authored-by: default avataralinavalinav <60705229+alinavalinav@users.noreply.github.com>
    Co-authored-by: default avatarAlina Vasilciuc <alinav@xlnx.xilinx.com>
    Co-authored-by: default avatarFelix Jentzsch <45395194+fpjentzsch@users.noreply.github.com>
    a65e08b0
    History
    Custom op notebook (#283)
    Yaman Umuroglu authored
    
    * [Notebook] start custom op nb
    
    * [Notebook] update custom_op notebook
    
    * [Notebook] update the custom op notebook to reflect new reg system
    
    * [Notebook] Added more descriptive text into the notebook (#278)
    
    * [Web] update publications
    
    * Build step: measure rtlsim performance (#262)
    
    * [Build] introduce step_measure_rtlsim_performance
    
    * [Docs] document the rtlsim performance step
    
    * [Docs] add comments on CPU/RAM/storage recommandations
    
    * [Build, Test] enable rtlsim perf as part of build test too
    
    * [Build] print where intermediate outputs are generated
    
    * [Docs] remove ghpages content, add note
    
    * [Docker] use -c continue for build_custom mode
    
    * [Docs] minor fixes
    
    * Driver data packing + improvements (#261)
    
    * [Driver] add driver_base.py as own template file + comments
    
    * [Driver] also move validation to won template + use in transform
    
    * [Driver] more comments
    
    * [Driver] suggested updates from PYNQ team + async mode exec_on_buffers
    
    * [Driver] allow smaller batchsize in execute_on_buffers
    
    * [Driver] optimize buffer alloc a bit
    
    * [Driver] wait condition fix
    
    * [Deps] update finn-base
    
    * [Deps] update finn-base
    
    * [Driver] enable fast_mode, expose more benchmarks
    
    * [Deps] update finn-base
    
    * [Driver] handle case with no rt weights
    
    * [Build] auto-exit build_custom if no errors
    
    * [Driver] get Alveo clock during test
    
    * Add report_utilization to stitched project tcl script (#243)
    
    * [Vitis] use -mode batch for report gen Vivado launch
    
    * Feature/cybersecurity notebook (#259)
    
    * Created cybersecurity notebook and downloaded data with wget
    
    * Reorganized the cybersecurity notebook
    
    * Read the entire dataset as a pytorch tensor and trained a simple MLP on the UNSW_NB15 dataset
    
    * small changes to markdown
    
    * Training and testing have the same integer encoding
    
    * Added debugger tool
    
    * added loss visualization
    
    * aded 1hot encoder and separated dataloader
    
    Added 1-hot encoder with scikit learn.
    Seperated the dataloader into a python file.
    
    * changes to get 99.998% accuracy
    
    * changed loss plot
    
    * accuracy at 70% after 50 epochs
    
    However, loss is not ok
    
    * got 75% accuracy
    
    * see loss
    
    * added scheduled statistics
    
    * added iterator over all possible parameters
    
    * updates on automation
    
    debugging model error
    
    * Delete cybersecurity-checkpoint.ipynb
    
    * Delete cybersecurity_2-checkpoint.ipynb
    
    * Delete exemplofixe-checkpoint.ipynb
    
    * Delete UNSW_NB15_testing-set.csv
    
    * Delete UNSW_NB15_train.csv
    
    * Delete UNSW_NB15_training-set.csv
    
    * Delete UNSW_NB15_val.csv
    
    * general cleanup
    
    * general cleanup
    
    * updates with 75.7238% accuracy
    
    * added quantization of the dataset
    
    * debugging the quantization of the dataset
    
    * added plots for the debugging
    
    * debugging the quantization. Show the differences
    
    * update debugging
    
    * updates on debugging
    
    * updates on debugging quantization
    
    * updates on debug, uint32 df added
    
    * updates on debugging
    
    * added 2 pictures for the debugging
    
    * Added quantization of the dataset
    
    * aded results for training the model with the quantized dataset
    
    * added quantization of the dataset
    
    * added new notebook with model definition with brevitas
    
    * cleaning up documents
    
    * modified the model definition
    
    * Changed the loss function
    
    * Added debug with pdb
    
    * Successfully created neural network with Brevitas
    
    * Correctly quantize the dataset
    
    * Added export of onnx model
    
    * Added FINN validation of the Brevitas model
    
    * improved dataloader
    
    * general cleanup
    
    * General Cleanup
    
    * General Cleanup
    
    * Completed verifying the FINN model against Brevitas
    
    * Added new layer to MLP - Debugging
    
    * verified that the MLP model with new layer (QuantIdentity) outputs the same in Brevitas and in FINN for all 82332 test inputs
    
    * verified that the MLP model with new layer (QuantIdentity) outputs the same in Brevitas and in FINN for all 82332 test inputs
    
    * verified that model with new layer (QuantIdentity) outputs the same in Brevitas and in FINN for all 82332 inputs
    
    * verified that model with new layer and input shifted to accept {-1,1}, outputs the same in Brevitas (input is in {-1,+1}) and in FINN (input is in {-1,+1})  for the 82332 inputs
    
    * General cleanup and added text
    
    * General cleanup: improved text
    
    * General cleanup: fixed text typos
    
    * General cleanup: Added text
    
    * Delete cybersecurity.ipynb
    
    * Delete dataloader.py
    
    * Rename cybersecurity_Brevitas_1bit.ipynb to 1-cybersecurity-Brevitas-1bit.ipynb
    
    * Rename cybersecurity_Brevitas_Verification.ipynb to 2-cybersecurity-finn-verification.ipynb
    
    * Added the last notebook
    
    * Added last notebook describing the finn build
    
    * Added changed parameters to see differences
    
    * Added changed parameters and added text
    
    * Fixed typo
    
    * [Notebooks] reorganize into folders, add README for cybsec
    
    * [Notebook] add license header and refs to cybsec dataset quantizer
    
    * [Notebooks] rename cybsec notebook files
    
    * [Notebook] first pass thru cybsec part 1
    
    * [Notebook] refactor more of cybsec part 1
    
    * [Notebook] add option to use pretrained weights
    
    * fixed outline and typo
    
    * [Notebook] update cybsec notebook #2 and gitignore
    
    * [Notebook] start refactoring cybsec part 3
    
    * [ConvertToHLS] allow out_scale=2 for bipolar MT
    
    * [Build] add alternative set of steps for estimation only
    
    * [Transform] attempt to handle padding for IODMAs
    
    * [Transform] explicitly ignore IODMA nodes for InsertDWC
    
    * [Notebook] full pass over cybsec notebook 3
    
    * [Util] move vivado utils into finn-base
    
    * fixed outline
    
    * [HLSCustomOp] better err msg on ipgen failure
    
    Co-authored-by: default avatarAlina Vasilciuc <alinav@xlnx.xilinx.com>
    Co-authored-by: default avatarYaman Umuroglu <yamanu@xilinx.com>
    
    * [Notebook] add README, remove mobilenet notebook
    
    * [Docs] round of updates
    
    * [Docs] make stack image local
    
    * [Docs] apidocs updates
    
    * [Docs] update README for v0.5b
    
    * [Release] merge dev into master for v0.5b
    
    * [Docs] bring back missing img
    
    * [Docs] bring back missing images
    
    * Switch hlslib comparison functions (#263)
    
    * [Test] add lfc to end2end tests
    
    * [Deps] update hlslib to get comp:: fxns
    
    * [HLS] use comp:: comparators instead of std::
    
    * [VVAU] hlslib now uses inner prod dim instead of K
    
    * [Thres] manually workaround vivado_hls bug for T[0][0]=0
    
    * [Infra] add .vscode to .gitignore
    
    * [Build] separate HLS codegen and ipgen steps (#265)
    
    * [Docs] first version of developer docs
    
    * [Notebook] fix broken resource paths
    
    * Fix Im2Col attributes for newer finn-base (#276)
    
    * [Deps] update finn-base
    
    * [Refactor] fix im2col props for updated finn-base
    
    * [Docs ] Add FAQ page to the Documentation (#273)
    
    * [Docs] Add FAQ page into the Docs
    
    * [Docs] some minor text format changes.
    
    * [Docs] updates to FAQ
    
    Co-authored-by: default avatarYaman Umuroglu <yaman.umuroglu@xilinx.com>
    
    * [Notebook] Added more descriptive text into the notebook
    
    * Fix ZCU102 support in Vivado shell project (#280)
    
    * [ConvertToHLS] fix conversion for bipolar outputs
    
    * [Notebook] updates to custom op notebook
    
    Co-authored-by: default avatarYaman Umuroglu <yamanu@xilinx.com>
    Co-authored-by: default avatarTobi-Alonso <tobi.alonso@gmail.com>
    Co-authored-by: default avataralinavalinav <60705229+alinavalinav@users.noreply.github.com>
    Co-authored-by: default avatarAlina Vasilciuc <alinav@xlnx.xilinx.com>
    Co-authored-by: default avatarYaman Umuroglu <yaman.umuroglu@xilinx.com>
    Co-authored-by: default avatarFelix Jentzsch <45395194+fpjentzsch@users.noreply.github.com>
    
    Co-authored-by: default avatarjalezeta <51440887+jalezeta@users.noreply.github.com>
    Co-authored-by: default avatarTobi-Alonso <tobi.alonso@gmail.com>
    Co-authored-by: default avataralinavalinav <60705229+alinavalinav@users.noreply.github.com>
    Co-authored-by: default avatarAlina Vasilciuc <alinav@xlnx.xilinx.com>
    Co-authored-by: default avatarFelix Jentzsch <45395194+fpjentzsch@users.noreply.github.com>