kumo.jl
Julia package to simulate resource allocations in the cloud
Science Score: 31.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.7%) to scientific vocabulary
Keywords from Contributors
Repository
Julia package to simulate resource allocations in the cloud
Basic Info
- Host: GitHub
- Owner: iijlab
- License: mit
- Language: Julia
- Default Branch: main
- Size: 81.7 MB
Statistics
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 6
- Releases: 0
Metadata Files
README.md
KuMo: Towards Cloud Morphing
Table of contents
Installing KuMo
In a Julia REPL (command-line interface for julia), please use the following code snippet to install KuMo.
julia
using Pkg
Pkg.add(url="https://github.com/iijlab/KuMo.jl")
Visualization Tools
We provide an interface to two popular visualization tools in the Julia ecosystem:
- (GL)Makie.jl for an interactive plot analysis
- (Stats)Plots.jl for generating figures in LaTeX/PDF fashion
We recommend using the Makie interface first when designing or analyzing a scenario.
Pseudo costs selection and manipulation
Using efficiently our Cloud Morphing system, KuMo, is mainly done by selecting appropriate pseudo costs function for each resource. We implemented a small tool available within KuMo to help users with standard and usual variants of monotonic and convex pseudo costs.
In the julia REPL (command-line interface for julia), please use the following code snippet.
```julia using KuMo, GLMakie
showpseudocosts() ```
Interactive plot analysis with Makie
With our Makie interface, we provide a simple way to visualize the results of a scenario. The following code snippet will generate a plot of a default scenario.
```julia using KuMo, GLMakie
show_simulation() ```
Note that by default, show_simulation() will use a simple four convex nodes' scenario available in a small scenario collection called SCENARII.
At the time of writing, the user can try out-of-the-box the following scenario through
```julia showsimulation(SCENARII[:fournodes]) # default scenario for show_simulation()
showsimulation(SCENARII[:fournodesfourusers])
show_simulation(SCENARII[:square]) ```
Generating quality plots with Plots
Users can generate high quality plots with the goal of a LaTeX formatted PDF output in the following fashion.
```julia using KuMo, StatsPlots
scenario = SCENARII[:four_nodes]
simulateandplot!(scenario; plot_type = :all, target=:all) ```
The plot_type argument can be either :all or :plot or :areaplot. The target argument can be either :all or :nodes or :links.
Please read the documentation (WIP) for more information.
Reproducing the experimental results of any related paper
Installing Julia
We recommend any user, specially if unfamiliar with the Julia language, to use juliaup. Among other things, juliaup will install the latest release of Julia and add it to the path.
Do not use the julia version available on most repositories (such as apt) as it tends to not be maintained. Either install through juliaup or by downloading the binaries on the Julia language website.
Note that this package requires at least Julia 1.8 (the latest release at the time of writing).
How to use the scripts to generate the figures in the article
Clone the repository
Either clone this repository using, for instance the following command line in a shell
shell
git clone https://github.com/iijlab/KuMo.jl.git
or in a Julia REPL
julia
using Pkg
Pkg.develop(url="https://github.com/iijlab/KuMo.jl.git")
Note that the last command will download and install the package at the following path ~/.julia/dev/KuMo.
Change directory
Please open a terminal anywhere within the cloned repository (or cd into it).
Run the script
If one has LaTeX installed, running the script is as simple as using
```shell julia scripts/main.jl
or from anywhere within the repository
julia path/to/main.jl ```
If no LaTeX engine are available, please add the --nolatex flag.
shell
julia scripts/main.jl --nolatex
The output is generated in /figures.
Note that the first execution of the script will take a while as it will download and install all the dependencies.
Owner
- Name: IIJ laboratory
- Login: iijlab
- Kind: organization
- Location: 2-10-2 Fujimi, Chiyoda-ku, Tokyo, Japan
- Website: http://www.iijlab.net/
- Repositories: 7
- Profile: https://github.com/iijlab
Citation (CITATION.bib)
@misc{KuMo.jl,
author = {azzaare <jf@baffier.fr> and contributors},
title = {KuMo.jl},
url = {https://github.com/Azzaare/KuMo.jl},
version = {v0.1.0},
year = {2022},
month = {4}
}
GitHub Events
Total
Last Year
Committers
Last synced: about 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Azzaare | jf@b****r | 135 |
| Kenjiro Cho | k****c@i****t | 54 |
| CompatHelper Julia | c****y@j****g | 2 |
| Kenjiro Cho | k****c@v****l | 1 |
| Kenjiro Cho | k****c@b****p | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 4
- Total pull requests: 60
- Average time to close issues: N/A
- Average time to close pull requests: 15 days
- Total issue authors: 1
- Total pull request authors: 2
- Average comments per issue: 0.0
- Average comments per pull request: 0.05
- Merged pull requests: 31
- Bot issues: 0
- Bot pull requests: 30
Past Year
- Issues: 0
- Pull requests: 3
- Average time to close issues: N/A
- Average time to close pull requests: 3 minutes
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 3
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- Azzaare (3)
Pull Request Authors
- github-actions[bot] (32)
- Azzaare (32)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- actions/checkout v2 composite
- codecov/codecov-action v2 composite
- julia-actions/cache v1 composite
- julia-actions/julia-buildpkg v1 composite
- julia-actions/julia-docdeploy v1 composite
- julia-actions/julia-processcoverage v1 composite
- julia-actions/julia-runtest v1 composite
- julia-actions/setup-julia v1 composite
- JuliaRegistries/TagBot v1 composite
- julia-actions/RegisterAction latest composite
- julia-actions/setup-julia v2 composite
- actions/checkout v4 composite
- crate-ci/typos v1.18.0 composite