Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: Improved Timer Accuracy and Reporting for Fossil Test #49

Open
dreamer-coding opened this issue Jan 4, 2025 · 0 comments

Comments

@dreamer-coding
Copy link
Collaborator

dreamer-coding commented Jan 4, 2025

Is your feature request related to a problem? Please describe.
The current timer functionality in Fossil Test lacks precision and detailed reporting. This makes it difficult to measure the performance of functions or tests accurately, especially for time-critical or high-performance code. I’m frustrated when timing information is inconsistent or doesn’t provide enough granularity to analyze performance bottlenecks.

Describe the solution you’d like
I would like Fossil Test to include enhanced timers that provide:
• Higher accuracy using system-specific high-resolution timers (e.g., clock_gettime on POSIX or QueryPerformanceCounter on Windows).
• Support for measuring execution time in nanoseconds for detailed performance analysis.
• Detailed reports, including average, minimum, maximum, and standard deviation of execution times across test iterations.
• Annotations to track timing for specific code blocks, not just entire test cases.
• Optional logging of timing data to an external file for performance trend analysis over time.

Describe alternatives you’ve considered
• Writing custom timing utilities for each test, but this is repetitive and prone to inaccuracies.
• Using external profiling tools, which can be overkill for small tests and difficult to integrate into Fossil Test workflows.

Additional context
Accurate timers are essential for performance testing and optimization. This feature could also include built-in support for benchmarking tests and flagging those that exceed defined time thresholds, improving overall code efficiency.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant