All Projects → smoeding → usl

smoeding / usl

Licence: other
Analyze system scalability with the Universal Scalability Law

Programming Languages

r
7636 projects

Projects that are alternatives of or similar to usl

Cote
A Node.js library for building zero-configuration microservices.
Stars: ✭ 2,180 (+6506.06%)
Mutual labels:  scalability
Thespian
Python Actor concurrency library
Stars: ✭ 220 (+566.67%)
Mutual labels:  scalability
microservice workshop
Microservices Architecture Workshop focuses on helping the developers / architects to understand the key Architecture paradigms with hands on section. The course helps the developers from Monolithic App mindset to a Microservices based App development. It also helps the developers with hands on development experience with key Microservices infra…
Stars: ✭ 69 (+109.09%)
Mutual labels:  scalability
Azuredatabricksbestpractices
Version 1 of Technical Best Practices of Azure Databricks based on real world Customer and Technical SME inputs
Stars: ✭ 186 (+463.64%)
Mutual labels:  scalability
Mgodatagen
Generate random data for MongoDB
Stars: ✭ 206 (+524.24%)
Mutual labels:  scalability
Paddle
PArallel Distributed Deep LEarning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)
Stars: ✭ 17,232 (+52118.18%)
Mutual labels:  scalability
Sitereliabilityengineering
Notes on Site Reliability Engineering. Leave a 🌟 if you found this useful!
Stars: ✭ 144 (+336.36%)
Mutual labels:  scalability
Clustering4Ever
C4E, a JVM friendly library written in Scala for both local and distributed (Spark) Clustering.
Stars: ✭ 126 (+281.82%)
Mutual labels:  scalability
Hera
High Efficiency Reliable Access to data stores
Stars: ✭ 213 (+545.45%)
Mutual labels:  scalability
koa-plus
The Koa framework extended for APIs. Optimized for security, scalability, and productivity.
Stars: ✭ 17 (-48.48%)
Mutual labels:  scalability
Usl4j
A reasonably complete implementation of the Universal Scalability Law model.
Stars: ✭ 194 (+487.88%)
Mutual labels:  scalability
Axonframework
Framework for Evolutionary Event-Driven Microservices on the JVM
Stars: ✭ 2,558 (+7651.52%)
Mutual labels:  scalability
Node Api Boilerplate
DDD/Clean Architecture inspired boilerplate for Node web APIs
Stars: ✭ 2,797 (+8375.76%)
Mutual labels:  scalability
Sparse Evolutionary Artificial Neural Networks
Always sparse. Never dense. But never say never. A repository for the Adaptive Sparse Connectivity concept and its algorithmic instantiation, i.e. Sparse Evolutionary Training, to boost Deep Learning scalability on various aspects (e.g. memory and computational time efficiency, representation and generalization power).
Stars: ✭ 182 (+451.52%)
Mutual labels:  scalability
hybris
hybris gist by winston
Stars: ✭ 65 (+96.97%)
Mutual labels:  scalability
Openpmix
OpenPMIx Project Repository
Stars: ✭ 151 (+357.58%)
Mutual labels:  scalability
Mlstyle.jl
Julia functional programming infrastructures and metaprogramming facilities
Stars: ✭ 223 (+575.76%)
Mutual labels:  scalability
concurrent-ll
concurrent linked list implementation
Stars: ✭ 66 (+100%)
Mutual labels:  scalability
nest-convoy
[WIP] An opinionated framework for building distributed domain driven systems using microservices architecture
Stars: ✭ 20 (-39.39%)
Mutual labels:  scalability
Professional Programming
A collection of full-stack resources for programmers.
Stars: ✭ 15,936 (+48190.91%)
Mutual labels:  scalability

Analyze system scalability with the Universal Scalability Law

R-CMD-check codecov

This is an R package to analyze system performance data with the Universal Scalability Law.

The Universal Scalability Law (USL) was developed by Dr. Neil J. Gunther. It can be used to analyze system performance data in order to learn more about the scalability limitations of the system.

Details are presented in the book Guerrilla Capacity Planning (doi:10.1007/978-3-540-31010-5) and on the authors website.

Example

Here is an example for the scalability analysis of a Sun SPARCcenter 2000 in the SPEC SDM 91 benchmark. The data used is available for download from the SPEC website and also included as a demo dataset.

library(usl)

# Load data from the SPEC SDM91 benchmark
data(specsdm91)

specsdm91

# Analyze "throughput" by "load" for the "specsdm91" data
usl.model <- usl(throughput ~ load, specsdm91)

# Show a model summary including scalability coefficients
summary(usl.model)

# Predict the location of the maximum in the scalability function
peak.scalability(usl.model)

# Plot original data and computed scalability function
plot(specsdm91, pch=16)
plot(usl.model, col="red", add=TRUE)

The summary command returns the following output:

Call:
usl(formula = throughput ~ load, data = specsdm91)

Efficiency:
   Min     1Q Median     3Q    Max
0.0876 0.1626 0.2860 0.5624 0.7211

Residuals:
   Min     1Q Median     3Q    Max
 -81.7  -48.3  -25.1   29.5  111.1

Coefficients:
         Estimate  Std. Error  t value  Pr(>|t|)
alpha   0.0277285   0.0091217     3.04    0.0384  *
beta    0.0001044   0.0000199     5.25    0.0063  **
gamma  89.9952330  14.2134894     6.33    0.0032  **
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 82.8 on 4 degrees of freedom

Scalability bounds:
limit: throughput 3246 (Amdahl's asymptote)
peak:  throughput 1884 at load 96.52
opt:   throughput 1542 at load 36.06

The following image shows the plotted output:

SPEC SDM91 scalability function

Installation

The package is available from CRAN. Use the following command to install the package from the repository:

install.packages("usl")

Documentation

In addition to the package documentation there is also a package vignette available. Install the package and use the following command to open the vignette:

vignette("usl")

The vignette is also available from CRAN: https://CRAN.R-project.org/package=usl/vignettes/usl.pdf

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].