nnsmith icon indicating copy to clipboard operation
nnsmith copied to clipboard

Instruction of TVM COV

Open shaoyuyoung opened this issue 9 months ago • 1 comments

Hi, Jiawei @ganler . I'm sorry to bother you due to your busy schedule. I have some difficulty in collecting branch coverage of TVM.

I followed your instructions for Torch Cov and it worked.

I found that Tzer provides an instruction of TVM Memcov. I followed this, but unfortunately, it didn't work when I used the experiments scripts NNSmith provides. I couldn't get the profraw files.

I think this is due to the fact that the patch file is not specifically designed for branch cov but for edge cov. Do you still have a patch for branch cov for TVM? (or maybe some tutorials to help me make the patch)

Thx in advance :D

shaoyuyoung avatar May 14 '24 01:05 shaoyuyoung

I have solved this problem.

This is still misleading because of unclear instructions :(

When I have free time, I can contribute to adding the instruction of TVM like Torch

  • [ ] Add the instruction of TVM

shaoyuyoung avatar May 14 '24 12:05 shaoyuyoung

Hello @shaoyuyoung

Memcov is CFG coverage. In NNSmith and NeuRI I chose source code coverage.

To understand the differences between the two, you can check out my earlier blog: https://jw-liu.xyz/blog/2022/what-we-talk-when-we-talke-about-coverage/

TL;DR: For coverage evaluation, use source-code coverage cuz it's accurate; for coverage-guided fuzzing, use CFG coverage cuz it's fast.

ganler avatar May 17 '24 07:05 ganler

is not specifically designed for branch cov but for edge cov

FYI, edge coverage is actually more accurate than branch coverage. i.e., larger search space. :)

ganler avatar May 17 '24 07:05 ganler

thx for your answer :)

shaoyuyoung avatar May 17 '24 08:05 shaoyuyoung