Coder Social home page Coder Social logo

Comments (9)

gbtucker avatar gbtucker commented on August 21, 2024

@zhiyuan-zhu, thanks for proposal to add test cases. I agree the crc update test and sizes could be improved. The update test could take random fragment sizes for example.

I'm not sure if reading data from a file will help since the program flow is completely feed-forward, the control flow of the program doesn't depend on the data. However we could model such as in igzip_rand_test.c where the data is either synthetically generated or taken from a file if provided.

Also I don't think adding the table-driven comparisons in the test will speed up the tests. The reference functions are much slower, will dominate the time of the tests, and must be performed anyway. Adding another comparison will just slow the tests down and is really unnecessary if we also run the noarch tests.

from isa-l.

zhiyuan-zhu avatar zhiyuan-zhu commented on August 21, 2024

@gbtucker, thanks your suggestions, I will redesign this proposal. For "reading data from a file", I will refer to igzip_rand_test.c's design.

I would like to create a new directory named: crc_stability_test in the crc/ directory, let this new test case not affect the original test case and as an option for users and developers. So the default original test case will still guarantee the correctness of the basic functions, this stability test case will just compare table-driven version with multi-binary version (not basic bit-wise version).

from isa-l.

zhiyuan-zhu avatar zhiyuan-zhu commented on August 21, 2024

@gbtucker, refine the proposal.

  1. Create a new directory "crc_stability" under the crc/ directory for this new stability test case.
  2. Using a longer buffer size.
  3. Compare table-driven version with multi-binary version crc algorithm, the existing test case as basic functionally test, and this test case will refer to the existing test case.
  4. Provides the ability to read data from files as an option for command line arguments

Would you like to accept this proposal or have any other suggestions? thanks!

from isa-l.

gbtucker avatar gbtucker commented on August 21, 2024

@zhiyuan-zhu I suggest we concentrate on test cases to improve coverage and not more comparisons. I think more cases and longer buffer sizes can still fit in the current "check" test. If test runtime is an issue then it can move to an extended test unit_tests += No need to make a new category and or directory. If we keep the test to compare just reference vs. multi-binary then we can get more comparisons by running on lots of arch, which we need to do anyway, and the noarch check, which we already do. I suggest we improve incrementally by adding one new testcase at a time to the existing test. New tests can be parameterized by size, dataset, etc. and run multiple times if need be.

from isa-l.

zhiyuan-zhu avatar zhiyuan-zhu commented on August 21, 2024

@gbtucker Thanks a lot, I will refine this proposal soon :).

from isa-l.

zhiyuan-zhu avatar zhiyuan-zhu commented on August 21, 2024

@gbtucker refine the proposal.

  1. Enhance the strength of existing test cases.
  2. Using a longer buffer size.
  3. Extended test used "unit_tests +=" for Compare table-driven version with multi-binary version crc algorithm.
  4. Provides the ability to read data from files as an option for command line arguments.
  5. Parameterized by size, dataset, run multiple times.

Do you have any other suggestions?

from isa-l.

gbtucker avatar gbtucker commented on August 21, 2024

@zhiyuan-zhu, I like 1, 2, & 5. Let's do those first. I'm not sure 3 & 4 add much.

from isa-l.

zhiyuan-zhu avatar zhiyuan-zhu commented on August 21, 2024

@gbtucker Thanks for your kindly reply, I will arrange a more detailed design document follow the blew items.

  1. Enhance the strength of existing test cases.
  2. Using a longer buffer size.
  3. Parameterized by size, dataset, run multiple times.
    @cyb70289

from isa-l.

zhiyuan-zhu avatar zhiyuan-zhu commented on August 21, 2024

@gbtucker

I have upload two documents,

  1. detailed-design-doc.md.txt for crc test case improve, detailed design document.
  2. perf-test-improve-proposal.md.txt for crc perf test improve proposal.
    Would you please help to take a look at them, thanks.

detailed-design-doc.md.txt
perf-test-improve-proposal.md.txt

from isa-l.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.