LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

25
Repeatable Computer Experiments Made Easy Sylvain Hallé Université du Québec à Chicoutimi, Canada CRSNG NSERC

Transcript of LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Page 1: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Repeatable Computer ExperimentsMade Easy

Sylvain HalléUniversité du Québec à Chicoutimi, Canada

CRSNGNSERC

Page 2: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

An experiment is an object that takes input parameters, can be executed, and produces output parameters.

Page 3: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

An experiment is an object that takes input parameters, can be executed, and produces output parameters.

Page 4: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

A table is a collection of parameters from a set of experiments. Tables can be transformed, combined and displayed.

An experiment is an object that takes input parameters, can be executed, and produces output parameters.

Page 5: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

A table is a collection of parameters from a set of experiments. Tables can be transformed, combined and displayed.

An experiment is an object that takes input parameters, can be executed, and produces output parameters.

Page 6: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM

A table is a collection of parameters from a set of experiments. Tables can be transformed, combined and displayed.

An experiment is an object that takes input parameters, can be executed, and produces output parameters.

Page 7: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

A table is a collection of parameters from a set of experiments. Tables can be transformed, combined and displayed.

An experiment is an object that takes input parameters, can be executed, and produces output parameters.

Page 8: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

A table is a collection of parameters from a set of experiments. Tables can be transformed, combined and displayed.

An experiment is an object that takes input parameters, can be executed, and produces output parameters.

Tables can be given as data sources to plots.

Page 9: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Save a partially executed lab to a file; reload and resume at a later time or on a different machine.

Package all the lab's code, dependency libraries and data files into a single, runnable file.

A laboratory is an organized collection of experiments, tables and plots.

Control the lab and view the results from a web browser.

Page 10: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)
Page 11: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)
Page 12: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)
Page 13: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

Track any cell of any table al the way up to the experiments that enter in the production of that value.

Page 14: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

Track any cell of any table al the way up to the experiments that enter in the production of that value.

Page 15: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

Track any cell of any table al the way up to the experiments that enter in the production of that value.

Page 16: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

Track any cell of any table al the way up to the experiments that enter in the production of that value.

Page 17: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

Track any cell of any table al the way up to the experiments that enter in the production of that value.

Page 18: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Cell (0,2) in Table #3

The sum of column 2 in Table #2

Cell (0,2) in Table #2

The value of

Cell (1,1) in Table #1

Value of time in Experiment #2

Cell (1,2) in Table #1

Value of name in Experiment #2

Cell (1,2) in Table #2

The value of

Cell (5,1) in Table #1

Value of time in Experiment #6

Cell (5,2) in Table #1

Value of name in Experiment #6

Cell (2,2) in Table #2

The value of

Cell (9,1) in Table #1

Value of time in Experiment #10

Cell (9,2) in Table #1

Value of name in Experiment #10

Page 19: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Cell (0,2) in Table #3

The sum of column 2 in Table #2

Cell (0,2) in Table #2

The value of

Cell (1,1) in Table #1

Value of time in Experiment #2

Cell (1,2) in Table #1

Value of name in Experiment #2

Cell (1,2) in Table #2

The value of

Cell (5,1) in Table #1

Value of time in Experiment #6

Cell (5,2) in Table #1

Value of name in Experiment #6

Cell (2,2) in Table #2

The value of

Cell (9,1) in Table #1

Value of time in Experiment #10

Cell (9,2) in Table #1

Value of name in Experiment #10

Page 20: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

Track any cell of any table al the way up to the experiments that enter in the production of that value.

T6.2.4

E0.z.0

Each individual datapoint is assigned a unique ID, called the LabPal Datapoint Identifier (LDI).

Page 21: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

E1t=2

x=[3,1,0.3]

u=http://... k=0.239

z=["foo","bar"]

E1t=5

x=[6,2,0.2]

u=http://...

E2q=0

f="foo"

...

t z b

SUM JOIN

Track any cell of any table al the way up to the experiments that enter in the production of that value.

T6.2.4

E0.z.0

Each individual datapoint is assigned a unique ID, called the LabPal Datapoint Identifier (LDI).

doi.org/10.1145/309.308/

Page 22: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Lab data can be exported into a research paper as LaTeX macros.

The generated PDF containsLDI hyperlinks.

Page 23: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Lab data can be exported into a research paper as LaTeX macros.

The generated PDF containsLDI hyperlinks.

Page 24: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

Lab data can be exported into a research paper as LaTeX macros.

The generated PDF containsLDI hyperlinks.

Page 25: LabPal: Repeatable Computer Experiments Made Easy (ACM Workshop Talk)

https://liflab.github.io/labpal