![](https://i.imgur.com/wQ4uohV.png)
# Benchmark Zarr Implementations
______
Mentee Name: [Parth Tripathi](https://github.com/parthxtripathi)
Mentor Name: [Josh Moore](https://github.com/joshmoore) and [Sanket Verma](https://github.com/MSanKeys963)
____
## Who am I?
- A college student
- Open source contributor
## About the project
Zarr is a format for the storage of chunked, compressed, N-dimensional arrays that is inspired by HDF5, h5py and bcolz and depends on NumPy. This project works on the implementation of benchmarking in Zarr using Airspeed Velocity(ASV) in order to catch any changes that introduce a performance regression. Initially, the project must be begun from the ground up, but with time, benchmarks will be updated to show the trend of various metrics over time and define a number of simple metrics for reading and writing Zarr files. Deliverables - asv.conf to implement a benchmark suite. Benchmarks of **convenience.py** , **creation.py** , **core.py** and **storage.py** Zarr’s modules with their documentation.
### Project Timeline
| **Time Period** | **Task** |
| ------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- |
| May 20 - June 12 (Community Bonding Period) | Interact with mentors and other members of the organization to plan and discuss the implementation of the modules of the project. |
| Week 1 | Exploring the Zarr Python repository and learning about the required modules. Creating asv.conf for the benchmarking suite. |
| Week 2 | Developing a benchmark for the functions `save_array`, `save_group`, `save` and`copy` in the convenience module. Documenting the functions. |
|Week 3| Developing a benchmark for the functions `load` , `open` , `copy_store` and `copy_all` in the convenience module. Documenting the functions.
|Week 4| Developing a benchmark for the core module. Documenting the functions.|
|Week 5| Complete the pending work/task of the previous weeks(if any).|
|July 25 - July 29 (Phase 1 Evaluations)| Submission of the project on July 26th for Phase 1 evaluations.|
| Week 6 | Discuss integration of current benchmarking results with Zarr V3. |
| Week 7|Developing a benchmark for the functions `create`, `empty` and `full` in thecreation module. Documenting the functions.|
| Week 8|Developing a benchmark for the functions `zeros`, `ones`, `open_array` and `array` in the creation module. Documenting the functions.|
| Week 9|Developing a benchmark for the functions in the `storage` module. Documenting the functions.|
|Week 10|Complete the pending work/task of the previous weeks(if any).|
| Final Two Weeks (Week 11 & Week 12)| The last fourteen days of the project will be utilized to wrap up any inadequate code audits to get all benchmarks done on time. |
|Final Evaluation (September 5 - September 12)| Finalizing all the changes and submitting the project for the final phase.|
|September 20| GSoC result is announced.|
## Mid-Term Evaulation: Passed
![](https://i.imgur.com/JTLgPlf.png)
-----
### Current stage of the project:
---
- **We're here:**
Completed.
---
- **Work done so far:**
All the work mentioned above is done.
Waiting for the review.
---
- **Wrap Up:**
All Done.
---
### Thank You!
You can find me on:
1. [LinkedIn](https://www.linkedin.com/in/parth-tripathi-689506202/)
2. [GitHub](https://github.com/parthxtripathi)
3. [Twitter](https://twitter.com/parthxtripathi)
4. [Email](parthxtripathi@gmail.com)