Systems

Each system is characterized by its CPU type, the operating system type and the mkin version.

cpu_model <- benchmarkme::get_cpu()$model_name
operating_system <- Sys.info()[["sysname"]]
mkin_version <- as.character(packageVersion("mkin"))
system_string <- paste0(operating_system, ", ", cpu_model, ", mkin version ", mkin_version)
load("~/git/mkin/vignettes/web_only/mkin_benchmarks.rda")
mkin_benchmarks[system_string, c("CPU", "OS", "mkin")] <- c(cpu_model, operating_system, mkin_version)

if (mkin_version > "0.9.48.1") {
  mmkin_bench <- function(models, datasets, error_model = "const") mmkin(models, datasets, error_model = error_model, cores = 1, quiet = TRUE)
} else {
  mmkin_bench <- function(models, datasets, error_model = NULL) mmkin(models, datasets, reweight.method = error_model, cores = 1, quiet = TRUE)
}
# Parent only
t1 <- system.time(mmkin_bench(c("SFO", "FOMC", "DFOP", "HS"), list(FOCUS_2006_C, FOCUS_2006_D)))[["elapsed"]]
t2 <- system.time(mmkin_bench(c("SFO", "FOMC", "DFOP", "HS"), list(FOCUS_2006_C, FOCUS_2006_D), error_model = "tc"))[["elapsed"]]
## Warning in mkinfit(models[[model_index]], datasets[[dataset_index]], ...): Optimisation did not converge:
## iteration limit reached without convergence (10)
## Successfully compiled differential equation model from auto-generated C code.
## Successfully compiled differential equation model from auto-generated C code.
## Successfully compiled differential equation model from auto-generated C code.
t3 <- system.time(mmkin_bench(list(SFO_SFO, FOMC_SFO, DFOP_SFO), list(FOCUS_2006_D)))[["elapsed"]]
## Warning in mkinfit(models[[model_index]], datasets[[dataset_index]], ...):
## Observations with value of zero were removed from the data
## Warning in mkinfit(models[[model_index]], datasets[[dataset_index]], ...):
## Observations with value of zero were removed from the data

## Warning in mkinfit(models[[model_index]], datasets[[dataset_index]], ...):
## Observations with value of zero were removed from the data
t4 <- system.time(mmkin_bench(list(SFO_SFO, FOMC_SFO, DFOP_SFO), list(subset(FOCUS_2006_D, value != 0)), error_model = "tc"))[["elapsed"]]
t5 <- system.time(mmkin_bench(list(SFO_SFO, FOMC_SFO, DFOP_SFO), list(FOCUS_2006_D), error_model = "obs"))[["elapsed"]]
## Warning in mkinfit(models[[model_index]], datasets[[dataset_index]], ...):
## Observations with value of zero were removed from the data

## Warning in mkinfit(models[[model_index]], datasets[[dataset_index]], ...):
## Observations with value of zero were removed from the data

## Warning in mkinfit(models[[model_index]], datasets[[dataset_index]], ...):
## Observations with value of zero were removed from the data
# Two metabolites, synthetic data
m_synth_SFO_lin <- mkinmod(parent = mkinsub("SFO", "M1"),
                           M1 = mkinsub("SFO", "M2"),
                           M2 = mkinsub("SFO"),
                           use_of_ff = "max", quiet = TRUE)

m_synth_DFOP_par <- mkinmod(parent = mkinsub("DFOP", c("M1", "M2")),
                           M1 = mkinsub("SFO"),
                           M2 = mkinsub("SFO"),
                           use_of_ff = "max", quiet = TRUE)

SFO_lin_a <- synthetic_data_for_UBA_2014[[1]]$data

DFOP_par_c <- synthetic_data_for_UBA_2014[[12]]$data

t6 <- system.time(mmkin_bench(list(m_synth_SFO_lin), list(SFO_lin_a)))["elapsed"]
t7 <- system.time(mmkin_bench(list(m_synth_DFOP_par), list(DFOP_par_c)))["elapsed"]

t8 <- system.time(mmkin_bench(list(m_synth_SFO_lin), list(SFO_lin_a), error_model = "tc"))["elapsed"]
t9 <- system.time(mmkin_bench(list(m_synth_DFOP_par), list(DFOP_par_c), error_model = "tc"))["elapsed"]

t10 <- system.time(mmkin_bench(list(m_synth_SFO_lin), list(SFO_lin_a), error_model = "obs"))["elapsed"]
t11 <- system.time(mmkin_bench(list(m_synth_DFOP_par), list(DFOP_par_c), error_model = "obs"))["elapsed"]

mkin_benchmarks[system_string, paste0("t", 1:11)] <- c(t1, t2, t3, t4, t5, t6, t7, t8, t9, t10, t11)
mkin_benchmarks
##                                                                                                       CPU
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 AMD Ryzen 7 1700 Eight-Core Processor
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 AMD Ryzen 7 1700 Eight-Core Processor
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 AMD Ryzen 7 1700 Eight-Core Processor
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 AMD Ryzen 7 1700 Eight-Core Processor
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 AMD Ryzen 7 1700 Eight-Core Processor
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 AMD Ryzen 7 1700 Eight-Core Processor
##                                                                        OS
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 Linux
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 Linux
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 Linux
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 Linux
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 Linux
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 Linux
##                                                                         mkin
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 0.9.48.1
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 0.9.49.1
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 0.9.49.2
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 0.9.49.3
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 0.9.49.4
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 0.9.49.5
##                                                                        t1
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 3.610
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 8.184
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 7.064
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 7.296
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 5.936
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 5.843
##                                                                         t2
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 11.019
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 22.889
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 12.558
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 21.239
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 20.545
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 35.863
##                                                                        t3
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 3.764
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 4.649
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 4.786
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 4.510
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 4.446
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 4.417
##                                                                         t4
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 14.347
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 13.789
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2  8.461
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 13.805
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 15.335
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 30.484
##                                                                         t5
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1  9.495
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1  6.395
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2  5.675
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3  7.386
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4  6.002
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 10.307
##                                                                        t6
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 2.623
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 2.542
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 2.723
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 2.643
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 2.635
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 2.538
##                                                                        t7
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 4.587
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 4.128
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 4.478
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 4.374
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 4.259
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 4.196
##                                                                        t8
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 7.525
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 4.632
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 4.862
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3  7.02
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 4.737
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 7.853
##                                                                         t9
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 16.621
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1  8.171
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2  7.618
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 11.124
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4  7.763
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 15.643
##                                                                       t10
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 8.576
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1 3.676
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2 3.579
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3 5.388
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4 3.427
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 7.733
##                                                                        t11
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.48.1 31.267
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.1  5.636
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.2  5.574
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.3  7.365
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.4  5.626
## Linux, AMD Ryzen 7 1700 Eight-Core Processor, mkin version 0.9.49.5 10.511
save(mkin_benchmarks, file = "~/git/mkin/vignettes/mkin_benchmarks.rda")