{"id":25456842,"url":"https://github.com/szaghi/fitter","last_synced_at":"2026-01-29T06:33:35.625Z","repository":{"id":146096289,"uuid":"72290126","full_name":"szaghi/FITTER","owner":"szaghi","description":"Fortran tIc Toc Timer","archived":false,"fork":false,"pushed_at":"2020-03-25T12:10:59.000Z","size":45,"stargazers_count":15,"open_issues_count":1,"forks_count":1,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-06-11T18:54:04.162Z","etag":null,"topics":["fortran","oop","tic-tac-toe","timer"],"latest_commit_sha":null,"homepage":null,"language":"Fortran","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/szaghi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.bsd-2.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2016-10-29T14:39:08.000Z","updated_at":"2024-04-27T07:39:17.000Z","dependencies_parsed_at":"2023-05-14T11:45:12.530Z","dependency_job_id":null,"html_url":"https://github.com/szaghi/FITTER","commit_stats":{"total_commits":10,"total_committers":1,"mean_commits":10.0,"dds":0.0,"last_synced_commit":"06b615627425b2240ace3c94f2f44f0c262facbb"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/szaghi%2FFITTER","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/szaghi%2FFITTER/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/szaghi%2FFITTER/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/szaghi%2FFITTER/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/szaghi","download_url":"https://codeload.github.com/szaghi/FITTER/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239394683,"owners_count":19631122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fortran","oop","tic-tac-toe","timer"],"created_at":"2025-02-18T01:51:28.026Z","updated_at":"2025-11-02T10:30:33.225Z","avatar_url":"https://github.com/szaghi.png","language":"Fortran","readme":"\u003ca name=\"top\"\u003e\u003c/a\u003e\n\n# FITTER [![GitHub tag](https://img.shields.io/github/tag/szaghi/FITTER.svg)]() [![Join the chat at https://gitter.im/szaghi/FITTER](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/szaghi/FITTER?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\n[![License](https://img.shields.io/badge/license-GNU%20GeneraL%20Public%20License%20v3,%20GPLv3-blue.svg)]()\n[![License](https://img.shields.io/badge/license-BSD2-red.svg)]()\n[![License](https://img.shields.io/badge/license-BSD3-red.svg)]()\n[![License](https://img.shields.io/badge/license-MIT-red.svg)]()\n\n[![Status](https://img.shields.io/badge/status-unstable-red.svg)]()\n[![Build Status](https://travis-ci.org/szaghi/FITTER.svg?branch=master)](https://travis-ci.org/szaghi/FITTER)\n[![Coverage Status](https://img.shields.io/codecov/c/github/szaghi/FITTER.svg)](http://codecov.io/github/szaghi/FITTER?branch=master)\n\n### FITTER, Fortran tIc Tic TimER\n\n\u003e A KISS pure Fortran Library for easy *timing* code snippets.\n\n- FITTER is a pure Fortran (KISS) library;\n- FITTER is Fortran 2008+ standard compliant;\n- FITTER is OOP designed;\n- FITTER is a Free, Open Source Project.\n\n#### A taste of FITTER\n\n```fortran\nuse fitter\ntype(timer) :: chronos ! The timer.\ninteger     :: s       ! Counter.\n\ncall chronos%tic(name='foo')\ncall foo\ncall chronos%toc\n\ndo s=1, 4\n  call chronos%tic(name='bar')\n  call bar\n  call chronos%toc\nenddo\n\ncall chronos%tic(name='foo')\ncall foo\ncall chronos%toc\n\ncall chronos%print(statistics=.true.)\n\n! output:\n\n! Elapsed time into \"foo\": 0.603904970000000E-001 [s]\n! Elapsed time into \"bar\": 0.103229564000000E+000 [s]\n! Number of snippets tracked: 2\n! Total elapsed time: 0.163620061000000E+000 [s]\n! Average (snippet) elapsed time: 0.818100305000000E-001 [s]\n! Relative elapsed time into each snippet:\n!   + foo: 36.909%\n!     Number of snippet hits: 2\n!     Total elapsed time: 0.603904970000000E-001 [s]\n!     Average elapsed time: 0.301952485000000E-001 [s]\n!     Relative elapsed time into each hit:\n!       + 001: 70.932%\n!       + 002: 29.068%\n!   + bar: 63.091%\n!     Number of snippet hits: 4\n!     Total elapsed time: 0.103229564000000E+000 [s]\n!     Average elapsed time: 0.258073910000000E-001 [s]\n!     Relative elapsed time into each hit:\n!       + 001: 23.667%\n!       + 002: 25.264%\n!       + 003: 25.527%\n!       + 004: 25.542%\n```\n\n#### Issues\n\n[![GitHub issues](https://img.shields.io/github/issues/szaghi/FITTER.svg)]()\n[![Ready in backlog](https://badge.waffle.io/szaghi/FITTER.png?label=ready\u0026title=Ready)](https://waffle.io/szaghi/FITTER)\n[![In Progress](https://badge.waffle.io/szaghi/FITTER.png?label=in%20progress\u0026title=In%20Progress)](https://waffle.io/szaghi/FITTER)\n[![Open bugs](https://badge.waffle.io/szaghi/FITTER.png?label=bug\u0026title=Open%20Bugs)](https://waffle.io/szaghi/FITTER)\n\n#### Compiler Support\n\n[![Compiler](https://img.shields.io/badge/GNU-v6.1.1+-brightgreen.svg)]()\n[![Compiler](https://img.shields.io/badge/Intel-v16.1+-brightgreen.svg)]()\n[![Compiler](https://img.shields.io/badge/IBM%20XL-not%20tested-yellow.svg)]()\n[![Compiler](https://img.shields.io/badge/g95-not%20tested-yellow.svg)]()\n[![Compiler](https://img.shields.io/badge/NAG-not%20tested-yellow.svg)]()\n[![Compiler](https://img.shields.io/badge/PGI-not%20tested-yellow.svg)]()\n\n---\n\n[What is FITTER?](#what-is-FITTER) | [Main features](#main-features) | [Copyrights](#copyrights) | [Download](#download) | [Compilation](#compilation) | [Documentation](#documentation) | [References](#references)\n\n---\n\n## What is FITTER?\n\n\u003e **FITTER** is KISS pure Fortran library exposing a friendly class for *timing* code: the `timer` class is a *tic-toc* timer that easily track the time spent into parts of your codes, no more no less.\n\n## Main features\n\n\u003e FITTER is a *one-single-class* library exposing the `timer` object that\n\n+ [x] handle (automatically store) new timing for each snippet timed:\n    + [x] handle (automatically store) multiple timing for each snippet timed, namely allow multiple-hits tracking of snippets:\n+ [x] easy print statistics;\n+ [x] easy retrieve timings;\n* [x] Test Driven Developed (TDD);\n* [x] collaborative developed;\n* [ ] well documented;\n* [x] free!\n\nAny feature request is welcome.\n\nGo to [Top](#top)\n\n## Copyrights\n\nFITTER is a Free and Open Source Software (FOSS), it is distributed under a **very permissive** multi-licensing system: selectable licenses are [GPLv3](http://www.gnu.org/licenses/gpl-3.0.html), [BSD2-Clause](http://opensource.org/licenses/BSD-2-Clause), [BSD3-Clause](http://opensource.org/licenses/BSD-3-Clause) and [MIT](http://opensource.org/licenses/MIT), feel free to select the license that best matches your workflow.\n\n\u003e Anyone is interest to use, to develop or to contribute to FITTER is welcome.\n\nMore details can be found on [wiki](https://github.com/szaghi/FITTER/wiki/Copyrights).\n\nGo to [Top](#top)\n\n## Download\n\nTo be written.\n\nGo to [Top](#top)\n\n## Compilation\n\nFITTER is a modern Fortran project thus a modern Fortran compiler is need to compile the project. The project is modular, namely it exploits Fortran modules. As a consequence, there is compilation-cascade hierarchy to build the project. To correctly build the project the following approaches are supported\n\n+ [Build by means of FoBiS](#build-by-means-of-fobis): full support;\n+ [Build by means of GNU Make](#build-by-means-of-gnu-make): to be implemented.\n+ [Build by means of CMake](#build-by-means-of-cmake): to be implemented.\n\nThe FoBiS building support is the most complete, as it is the one used for the developing FITTER.\n\n### Build by means of FoBiS\n\nA `fobos` file is provided to build the project by means of the Fortran Building System [FoBiS.py](https://github.com/szaghi/FoBiS).\n\n#### Build all programs\n\nType\n\n```shell\nFoBiS.py build -mode tests-gnu\n```\n\nAfter (a successful) building a directory `./exe` is created containing all the compiled programs found recursively in the tree project.\n\n### Build by means of GNU Make\n\nTo be implemented.\n\n### Build by means of CMake\n\nTo be implemented.\n\nGo to [Top](#top)\n\n---\n\n## Documentation\n\nBesides this README file the FITTER documentation is contained into its own [wiki](https://github.com/szaghi/FITTER/wiki). Detailed documentation of the API is contained into the [GitHub Pages](http://szaghi.github.io/FITTER/index.html) that can also be created locally by means of [ford tool](https://github.com/cmacmackin/ford).\n\nTo be completed.\n\nGo to [Top](#top)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fszaghi%2Ffitter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fszaghi%2Ffitter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fszaghi%2Ffitter/lists"}