Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
[04/29/2022] We are holding a tutorial at FCCM 2022.
[04/29/2022] Check our latest documentation for the workflow here.
[02/20/2022] We decide to only maintain AutoBridge as a plug-in of the TAPA workflow. The TAPA framework provides a stable and robust environment for AutoBridge across different HLS versions. TAPA is easy and natural to use if you are familiar with the HLS dataflow coding style.
[01/06/2022] We are integrating AutoBridge and TAPA to create a robust workflow. Currently AutoBridge relis on hacking the RTL generated by Vivado HLS, which makes it fragile. Instead, using the open-source TAPA compiler as the frontend will make the floorplanning-pipelining flow much more robust. While the integration of AutoBridge and TAPA is still in progress, feel free to contact me if you want to try it out, we will provide as much help as needed to make your design work!
[01/06/2022] With the help of AutoBridge and TAPA, Serpens achieves 270 MHz on Alveo U280 while using 24 HBM channels, while a normal Vitis flow will failed in routing. Serpens is an HBM-based accelerator for sparse matrix-vector multiplication (SpMV). With the high frequency, Serpens gets a 3.79X performance improvement over the previous state-of-the art GraphLily.
[01/06/2022] With the help of AutoBridge and TAPA, Sextans achieves 260 MHz on Alveo U250 while using 4 DDR channels, while a normal Vitis flow will only achieves 190 MHz.
[12/20/2021] We just open-sourced RapidStream, a follow-up work of AutoBridge. This time we parallelize the placement and routing of each slot based on the floorplanning by AutoBridge. Check out how we achieve 5-7X speedup over Vivado!
A new implementation has been ready! Check the example in AutoBridge/in-develop/test/autosa_cnn_13x8/.
The user interface has been significantly simplified. To invoke the new AutoBridge, just write a simple config file like this:
{
"Board" : "U250",
"HLSProjectPath" : "./kernel3",
"HLSSolutionName" : "solution",
"TopName" : "kernel3",
"FloorplanMethod": "IterativeDivisionToHalfSLR",
"AreaUtilizationRatio" : 0.7,
"BundleToDDRMapping" : {
"gmem_A": 0,
"gmem_B": 1,
"gmem_C": 2
},
"LoggingLevel" : "DEBUG"
}
What
: AutoBridge is a floorplanning tool for Vivado HLS dataflow designs.
Why
: Co-optimizing HLS compilation and placement brings new opportunities to improve the final achievable frequency.
How
: Pre-determine the rough location of each module during HLS compilation, so that:
the long interconnect could be adequately pipelined by the HLS scheduler.
we prevent the Vivado placer to place the logic too densely.
In our experiments with a total of 43 design configurations, we improve the average frequency from 147 MHz to 297 MHz.
The pre-print manuscript of our paper could be found at https://vast.cs.ucla.edu/sites/default/files/publications/AutoBridge_FPGA2021.pdf
Projects using AutoBridge:
Motivating Examples:
Comparison of a stencil accelerator on Xilinx U280. From routing failure to 297 MHz.
Comparison of a systolic array on Xilinx U250. From 158 MHz to 316 MHz.
Yuze Chi, Licheng Guo, Jason Lau, Young-kyu Choi, Jie Wang, Jason Cong. Extending High-Level Synthesis for Task-Parallel Programs. In FCCM, 2021. [PDF] [Code] [Slides] [Video]
Licheng Guo, Yuze Chi, Jie Wang, Jason Lau, Weikang Qiao, Ecenur Ustun, Zhiru Zhang, Jason Cong. AutoBridge: Coupling Coarse-Grained Floorplanning and Pipelining for High-Frequency HLS Design on Multi-Die FPGAs. In FPGA, 2021. (Best Paper Award) [PDF] [Code] [Slides] [Video]
The experiment results for all benchmarks in our submission to FPGA'21 are available at: https://ucla.box.com/s/5hpgduqrx93t2j4kx6fflw6z15oylfhu
Currently only a subset of the source code of the benchmarks are open-sourced here, as some designs are not published yet and will be updated later.
FAQs
AutoBridge
We found that autobridge demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.