Skip to content
Snippets Groups Projects
  1. Dec 17, 2020
    • Yaman Umuroglu's avatar
      4fee6ffd
    • Yaman Umuroglu's avatar
      be5fd122
    • alinavalinav's avatar
      Feature/cybersecurity notebook (#259) · 004475a4
      alinavalinav authored
      
      * 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>
      004475a4
  2. Dec 01, 2020
    • Yaman Umuroglu's avatar
      MobileNet-v1 on Alveo (#252) · 620b96f3
      Yaman Umuroglu authored
      
      * [Util] Add mobilenet to test.py in util
      
      * [Test] Add first draft of brevitas export unit test into test suite
      
      * [Test] Shorten import of mobilenet and add example picture
      
      * [Docker] Temporarily set brevitas commit version to auphelia brevitas fork
      
      * [Test] Add transformation and execution function to mobilnet test
      
      * [Docker] Change brevitas repo back to Xilinx repo
      
      * [Test] Add transformations and execution to mobilenet test
      
      * [Docker] Update brevitas commit version
      
      * [Test] Insert Topk into mobilenet test
      
      * [Test] Use Top5 to verify mobilenet functionality of execution in FINN
      
      * [CustomOp] Remove rounding in QuantAvgPool2d
      
      * [Test] Add first streamlining transformations to mobilenet test
      
      * [Notebook] Add end2end notebook for mobilenet-v1
      
      * [Test] Add transformation to streamline mobilenet-v1
      
      * [Test & Notebook] Update streamlining and lowering of mobilenet-v1
      
      * [Test] Add test setup for move flatten transformation
      
      * [Test] Add tidy up trafo mobilenet test
      
      * [Streamline] Add reorder fct to move flatten past matmul, mul or add
      
      * [Test] Update test to check functional verification after MoveFlatten trafo
      
      * [Test] Add new trafos to mobilenet test
      
      * [Streamline] Add drafts for move transformations to reorder trafos
      
      * [Test] Delete obsolete test and update mobilenet test
      
      * [Streamline] Fix missing return in MoveTransposePastScalarMul
      
      * [Test] Update mobilenet test with new transformations
      
      * [Test] Add mul value to make model outputs comparable (mobilenet-v1)
      
      * [Test&Notebook] Update mobilenet-v1 streamlining
      
      * [Test] Add preprocessing as exportable pytorch module for mobilenet and merge models
      
      * [Util] Add pytorch modules for imagenet normalize preprocessing
      
      * [Util] Add functions to resize and centercrop a PIL image
      
      * [Test] Refactor mobilenet test
      
      * [Test] Set input finn dtype and fix bug with saving onnx checkpoints
      
      * [Test] First draft of end2end test mobilenet (prepare model for flow)
      
      * [Test] Add streamlining and lowering to end2end mobilenet test
      
      * [Test] Add hls conversion and dataflow partitioning to mobilenet end2end test
      
      * [Transform] ConvertToHLSLayers add support for QuantAvgPool2d with data layout NHWC
      
      * [Test] Save golden output for end2end mobilenet
      
      * [Test] Add folding and draft for verification to end2end mobilenet
      
      * [Transform] Fix bug in insertion of pool batch node
      
      * [Test] Add time measurement to end2end mobilenet
      
      * [Test] Add ip gen and rtlsim to end2end mobilenet test
      
      * [Transform] Add missing import HLS conversion
      
      * [Test] Clean dataflow partition of mobilenet before saving
      
      * [Docker] mount imgnet val if specified
      
      * [Util] add some ImageNet val utils
      
      * [Test] add validation test for MobileNet-v1
      
      * [Util] support logging QuantTensors in forward hook
      
      * [Test] add debug option for tensorwise comparison in validate_mobilenet
      
      * [Test] Delete streamlining part from mobilenet export test
      
      * [Test] pre-commit test_brevitas_mobilenet
      
      * [Util] Set resample=0 in PIL resize function
      
      * [Doc] document the imagenet val env.var
      
      * [Test] mark mobilenet val test as xfail
      
      * [Test] correct typo in MobileNet-v1 val test
      
      * [Test] fix MobileNet-v1 validation test for multiple imgs
      
      * [Util] fix get_val_images for ImageNet validation
      
      * [Util] more ImageNet testing utils
      
      * [Test] use new utils in MobileNet-v1 tests
      
      * [Util] update ImageNet utils to use torchvision utils
      
      * [Test] test preproc only in test_brevitas_mobilenet_preproc
      
      * [Util] add option to control get_val_images order
      
      * [Test] different classes for mobilenet comparison
      
      * [StreamingFC] clip thresholds larger than acc
      
      * [VVAU] add accumulator minimization and threshold clipping
      
      * [HLSCustomOp] clip thresholds on both sides if needed
      
      * [Transform] call acc minimization for VVAU too
      
      * [Test] reorder tests for end2end mobilenet
      
      * [Test] fixes to MobileNet validation after merge
      
      * [Test] MobileNet-v1: temp fix for export + add fifo set and build
      
      * [Transform] fix num inp vectors for InferLabelSelect
      
      * [Test] MobileNet: bring back labelselect, use dataflow partition
      
      * [Deps] update Brevitas to get mobilenet export fix
      
      * [Test] bring back export for mobilenet-v1 end2end
      
      * [Test] MobileNet-v1: add extra_fold, reorder tests
      
      * [Test] MobileNet-v1: additional marks + bugfix
      
      * [Test] MobileNet-v1: fix build dir
      
      * [LabelSelect] fix cppsim bug
      
      * [SetFIFODepths] allow overriding auto for large FIFOs
      
      * [Test] MobileNet-v1: add more config options to mnv1 end2end test
      
      * [Vitis] enable Vivado physopts with PERFORMANCE_BEST
      
      * [Test] MobileNet-v1 edn2end: aim for higher perf
      
      * [Build] add more build options + minor improvements
      
      including Vitis build strategy, large FIFO mem mode + ability to
      spec custom fifo depths
      
      * [Docker] minor improvements in run-docker.sh
      
      * [Docker] new attempt at handling XRT deps
      
      * [Test] mark semi-failing MNv1 tests as xfail
      
      * [Infra] fix entrypoint script working dirs
      
      * [Build] allow specifying fxns as build steps
      
      * [Build] print build log location
      
      * [InsertFIFO] allow creating shallow FIFOs if desired
      
      * [Build] create shallow FIFOs to use ApplyConfig, then remove as needed
      
      * [Infra] use abspath for Dockerfile
      
      * Revert "[Infra] use abspath for Dockerfile"
      
      This reverts commit 010fb910b140e7539e1599862681a4d520171388.
      
      * [Infra] better solution for run-docker.sh from outside
      
      * [HLSCustomOp] add directory check after running IPGenBuilder
      
      * [Build] rename to step_set_fifo_depths, fix non-auto depth case
      
      * [Build] typo fix
      
      Co-authored-by: default avatarauphelia <jakobapk@web.de>
      620b96f3
  3. Oct 28, 2020
    • Yaman Umuroglu's avatar
      Refactor custom op system (#245) · 4225faac
      Yaman Umuroglu authored
      * [Refactor] use getCustomOp instead of direct registry access
      
      * [Refactor] move HLSCustomOp base to own file
      
      * [Refactor] register all HLSCustomOps in new style
      
      * [Refactor] use correct domain for custom ops acc. to new style
      
      * [Deps] update finn-base to get new-style customop domains
      
      * [Refactor] more domain fixes
      
      * [Test] fix ipstitch expected io values in rtlsim
      
      * [Deps] update finn-base and brevitas
      
      * [Docs] link to CustomOp reorg PR
      4225faac
  4. Oct 05, 2020
  5. Sep 21, 2020
  6. Sep 11, 2020
  7. Sep 10, 2020
  8. Sep 09, 2020
  9. Sep 03, 2020
  10. Aug 20, 2020
  11. Aug 18, 2020
  12. Aug 11, 2020
  13. Jul 01, 2020
  14. May 13, 2020
  15. May 12, 2020
  16. May 08, 2020
  17. May 07, 2020
  18. May 06, 2020
  19. Apr 29, 2020
Loading