Skip to content
Snippets Groups Projects
Commit 0e3daa4c authored by Antoine Kaufmann's avatar Antoine Kaufmann
Browse files

Initial commit for new jekyll version of the website

parents
No related branches found
No related tags found
No related merge requests found
Showing with 1215 additions and 0 deletions
{
"image": "mcr.microsoft.com/vscode/devcontainers/jekyll"
}
_site
.bundle
.sass-cache
.jekyll-cache
.jekyll-metadata
.DS_store
.ruby-version
.tweet-cache
Gemfile.lock
vendor
# SimBricks Website
This is the main repo for the SimBricks webpage. It's built using the
[Jekyll](https://jekyllrb.com/) static website generator. Gitlab CI on this
repository is set up so that the newest version is automatically deployed.
Editing and testing locally requires working jekyll setup. To make this as
simple as possible, the repo contains a devcontainer configuration. If you have
vscode set up with the docker plugin, then all you need to do is open the cloned
repo, and then click the "re-open in container" button, and vscode will do the
rest.
To test, run `jekyll serve --lsi` which will start a webserver on
`http://localhost:4000` and automatically recompile as you make changes.
## Directory Structure
* `_data/`: YAML source files for structured data
+ `navigation.yml`: Links in the navigation menu at the top of the page.
+ `news.yml`: News items for front page.
+ `people.yml`: People info for people page and elsewhere.
+ `publications.yml`: Publications for pubs page and elsewhere.
* `_projects/`: Markdown files for individual projects, front-matter contains
necessary meta data.
* `_pages/`: Markdown files for individual pages, front-matter contains
necessary meta data.
* `_sass/` [SASS](https://sass-lang.com/) source files for our CSS. There is a
number of common files and then some that are specfic for individual layouts.
+ `base.scss` is the main file that imports everything else.
+ `normalize.scss` is a [helper](https://github.com/necolas/normalize.css) to
provide common defaults across different browsers.
+ `fonts.scss` imports the necessary font files (generated by google fonts).
+ `base-layout.scss`: Layout for the site skeletton used across all pages.
+ `base-design.scss`: Desing pieces for the site skeletton.
+ `slick.scss`: CSS components for the
[Slick slider](http://kenwheeler.github.io/slick/) we use for news.
+ The remaining `.scss` files are specfic for individual layouts.
* `_layouts/`: HTML layouts (templates for different pages).
+ `base.html`: The overall page skeleton, all other layouts extend this.
+ `default.html`: basic default page layout if nothing else is specified.
+ The rest are used for individual pages as specified by the `layout:`
parameter in the page front matter.
* `assets/`: Static files that are directly included in the generated page.
+ `images/`: Images
- `flags/`: Flag icons
- `people/`: Profile pictures
- `projects/`: Project logos
* `_config.yml`: Main Jekyll config file.
## Common Changes
### Adding / Modifying a Person
1. Start by editing `_data/people.yml`. If adding a new person you can copy from
another one as a starting point. Make sure to choose a unique key, as this
will be used elsewhere for referencing the person. Keep entries sorted by
category and then alphabetically.
2. Add a profile picture to `assets/images/people/`. Use the key as the
filename, PNG format. In `people.yml` specify the file name (without path or
extension) in the `img` parameter.
3. Add the person to any relevant projects, by editing the project markdown and
adding them to the `people` list.
### Adding / Modifying a Project
1. Create a new Markdown file in the `_projects`. Use lowercase as the page
name. This will also be the key in case the project gets referenced
elsewhere. You can use `simbricks.md` as a template to see the full
front-matter meta data. At least the title and list of people must be
specified.
2. Add the project logo (SVG unless there is absolutely no alternative) to
`assets/images/projects/`. Then specify the relative logo path in the images
folder (e.g. `projects/simbricks.svg) using the `logo` key in the markdown
file.
3. If applicable add publications.
**Caution:** Be careful when renaming projects. Ideally only change the project
title, and leave the short name (file name) as it is. If you do change the file
name, please make sure to **update all links**, including from publications and
news!
### Adding / Modifying Publications
Edit `_data/publications.yml`. Keep entries sorted with newest ones on top, but
keep in-progress entres on top. Use a unique key for each entry. When specfying
authors, be sure to use `internal` with the person key for authors in the group.
Additionally add everone to the `people` list.
## External Resources Used
* The fonts in `assets/fonts` were retrieved based on links from
[Google Fonts](https://fonts.googleapis.com/css2?family=Alegreya+Sans&family=Exo+2:wght@200;300;400;600&display=swap)
on August 14, 2023.
* For the news we use the [Slick slider](http://kenwheeler.github.io/slick/)
* We use [flag icons](https://github.com/lipis/flag-icons) version 6.7.0 on the
people page.
* We use [fontawesome](https://fontawesome.com/) version 6.4.2 for other icons.
url: "https://simbricks.github.io/"
baseurl: ""
title: "SimBricks"
include:
- _pages
exclude:
- README.md
collections:
projects:
output: true
permalink: /projects/:path.html
defaults:
- scope:
path: ""
type: "projects"
values:
layout: "project"
kramdown:
# set header offset for markdown parser as we use h1 as page title, so headers
# in the content need to start at h2
header_offset: 1
nav:
- title: Home
link: /
- title: Publications
link: /publications.html
- title: Community
link: /people.html
- title: Docs
link: https://simbricks.readthedocs.io/
- title: Code
link: https://github.com/simbricks
\ No newline at end of file
news:
- date: 2023-10-25
title: AC/DSim wins 3rd at SOSP'23 SRC
text: |
Jonas won third place at the [SOSP'23 student research competition](
https://sosp2023.mpi-sws.org/cfsrc.html) with AC/DSim.
- date: 2023-09-13
title: AC/DSim poster at SOSP'23 SRC
text: |
Jonas' submission on full system energy estimation with modular
simulation has passed stage 1 of the [SOSP'23 student research
competition](https://sosp2023.mpi-sws.org/cfsrc.html).
- date: 2023-05-09
title: Simics integrated into SimBricks
text: |
Jonas successfully implemented SimBricks adapters in the [Simics](
https://www.intel.com/content/www/us/en/developer/articles/tool/simics-simulator.html)
simulator for the PCI and memory protocols and we now merged this into our
main branch.
- date: 2023-02-23
title: SplitSim accepted at YArch'23
text: |
Hejing will present her ongoing work on parallelizing sequential
simulators through decomposition at [YArch'23](
https://web.mit.edu/yarch2023/index.html).
- date: 2023-02-14
title: Memory Disaggregation in SimBricks
text: |
We merged initial support for [simulating disaggregated memory](
https://github.com/simbricks/simbricks/pull/57) systems into our main
branch.
- date: 2023-01-27
title: Welcome Marvin
text: |
Marvin joined the project for his MSc thesis.
- date: 2022-11-18
title: Presented at WORDS'22
text: |
Bin showcased [SimBricks for disaggregated systems research](
https://simbricks.github.io/documents/22words_simbricks-disagg.pdf) at
WORDS'22. Here is [a video](https://www.youtube.com/watch?v=F9kO_YSnkCQ).
- date: 2023-10-18
title: Welcome Jakob
text: |
Jakob joined the project for his MSc thesis.
- date: 2022-08-24
title: Presented at SIGCOMM'22.
text: |
Hejing presented SimBricks at SIGCOMM'22 in Amsterdam. Here is [a video](
https://www.youtube.com/watch?v=fSIcPuuI6kk) of the presentation.
- date: 2022-06-29
title: Artifact Evaluation Passed
text: |
Our SIGCOMM'22 paper received all three artifact evaluation badges:
available, functional, and reproduced.
- date: 2022-05-07
title: Paper Accepted at SIGCOMM'22
text: |
Our SimBricks paper will appear at SIGCOMM'22 in Amsterdam!
\ No newline at end of file
categories:
core:
title: Core Team
sort_by: order
format: full
contributor:
title: Contributors
sort_by: name
format: full
past_contributor:
title: Past Contributors
sort_by: year
sort_reverse: true
format: short
people:
hejing:
name: Hejing Li
pronouns: she / her
description: PhD @ MPI-SWS
img: hejing
category: core
website: https://hajeongee.github.io/
antoine:
name: Antoine Kaufmann
pronouns: he / him
description: Faculty @ MPI-SWS
img: antoine
category: core
website: https://antoine.systems/
jialin:
name: Jialin Li
pronouns: he / him
description: Faculty @ NUS
img: jialin
category: core
website: https://www.comp.nus.edu.sg/~lijl/
jakob:
name: Jakob Görgen
pronouns: he / him
description: MSc @ Saarland
img: jakob
category: core
website: https://q713.github.io/jgoergen/
jonas:
name: Jonas Kaufmann
pronouns: he / him
description: MSc @ Saarland, Intern @ MPI-SWS
img: jonas
category: core
website: https://jonas-kaufmann.github.io/
marvin:
name: Marvin Meiers
pronouns: he / him
description: MSc @ Saarland
img: marvin
category: core
website: https://marvin71.github.io/
gideon:
name: Gideon Mohr
pronouns: he / him
description: MSc Thesis
category: contributor
artemio:
name: Artemio Ageev
pronouns: he / him
description: PhD @ MPI-SWS
img: artemio
category: contributor
yiliang:
name: Yiliang Wan
pronouns: he / him
description: MSc @ NUS
category: contributor
praneeth:
name: Praneeth Balasubramanian
pronouns: he / him
description: Intern @ NUS
category: past_contributor
year: 2023
website: https://www.linkedin.com/in/praneeth-bala-77374b202/
bin:
name: Bin Gao
pronouns: he / him
description: PhD @ NUS
img: bin
category: past_contributor
year: 2022
website: https://csbingao.github.io/
zhiqiang:
name: Zhiqiang Xie
pronouns: he / him
description: Intern @ MPI-SWS
category: past_contributor
year: 2021
website: https://zhiqiangxie.com/
keon:
name: Keon Jang
pronouns: he / him
description: SWE @ Google NetInfra
category: past_contributor
year: 2021
website: https://keonjang.github.io/
\ No newline at end of file
types:
inprogress:
title: In Progress
prefix: ""
conference:
title: Conference
prefix: "In "
workshop:
title: Workshop
prefix: "In "
techreport:
title: Tech Reports
prefix: "In "
poster:
title: Posters
prefix: "In "
restypes:
paperpdf:
label: Paper PDF
preprint:
label: Preprint
slides:
label: Slides
video:
label: Video
audio:
label: Audio
poster:
label: Poster
artifact:
label: Artifact
publications:
virtuoso:
type: inprogress
title: |
Virtuoso: High Resource Utilization and μs-scale Performance Isolation in
a Shared Virtual Machine TCP Network Stack
authors:
- internal: matheus
- internal: liam
- external: Simon Peter
- internal: antoine
venue: Under submission
year: 2023
people:
- matheus
- liam
- antoine
projects:
- virtuoso
resources:
- type: preprint
external: https://arxiv.org/abs/2309.14016
kugelblitz:
type: inprogress
title: |
Kugelblitz: Streamlining Reconfigurable Packet Processing Pipeline Design
and Evaluation
authors:
- internal: artemio
- internal: antoine
venue: Under Submission
year: 2023
people:
- artemio
- antoine
projects:
- kugelblitz
resources:
- type: preprint
external: https://arxiv.org/abs/2305.08435
cygnus:
type: inprogress
title: |
Protected Data Plane OS Using Memory Protection Keys and Lightweight
Activation
authors:
- external: Yihan Yang
- external: Zhuobin Huang
- internal: antoine
- external: Jialin Li
venue: Under Submission
year: 2023
people:
- antoine
resources:
- type: preprint
external: https://arxiv.org/abs/2302.14417
virtuoso_src:
type: poster
title: |
Virtuoso TCP Stack: Squashing Isolation and Resource Efficiency Tradeoffs
in Virtualized Environments
authors:
- internal: matheus
venue: ACM Student Research Competition @ SOSP 2023
year: 2023
people:
- matheus
projects:
- virtuoso
awards:
- First Place in Graduate Category
resources:
- type: poster
internal: virtuoso_src_2023.pdf
acdsim_src:
type: poster
title: |
AC/DSim: Full System Energy Estimation with Modular Simulation
authors:
- internal: jonas
venue: ACM Student Research Competition @ SOSP 2023
year: 2023
people:
- jonas
projects:
- acdsim
awards:
- Third Place in Graduate Category
resources:
- type: poster
internal: acdsim_src_2023.pdf
blueprint:
type: conference
title: |
Blueprint: A Toolchain for Highly-Reconfigurable Microservice Applications
authors:
- internal: vaastav
- external: Deepak Garg
- internal: antoine
- external: Jonathan Mace
venue: 29th ACM Symposium on Operating Systems Principles
series: SOSP
year: 2023
month: 10
location: Koblenz, Germany
people:
- vaastav
- antoine
projects:
- blueprint
resources:
- type: paperpdf
external: https://vaastavanand.com/assets/pdf/anand2023blueprint.pdf
- type: artifact
external: https://gitlab.mpi-sws.org/cld/blueprint/blueprint-sosp23-experiments
splitsim_yarch:
type: workshop
title: |
SplitSim: Scalable and Parallel Full Data Center System Simulations
authors:
- internal: hejing
- internal: antoine
venue: The Fifth Young Architect Workshop
series: YArch
year: 2023
month: 3
location: Vancouver BC, Canada
people:
- hejing
- antoine
projects:
- simbricks
- splitsim
resources:
- type: poster
external: https://web.mit.edu/yarch2023/poster/77.jpg
- type: video
external: https://www.youtube.com/watch?v=TXZT-4uQxkg
memdisagg_sim:
type: workshop
title: |
Improving Disaggregated System Evaluation with Modular End-to-End
Simulation
authors:
- external: Bin Gao
- internal: hejing
- external: Jialin Li
- internal: antoine
venue: 3rd Workshop On Resource Disaggregation and Serverless Computing
series: WORDS
year: 2022
month: 11
location: Virtual
people:
- hejing
- antoine
projects:
- simbricks
resources:
- type: paperpdf
external: https://simbricks.github.io/documents/22words_simbricks-disagg.pdf
- type: video
external: https://www.youtube.com/watch?v=F9kO_YSnkCQ
- type: slides
external: https://simbricks.github.io/documents/22words_simbricks-disagg_slides.pdf
simbricks:
type: conference
title: |
SimBricks: End-to-End Network System Evaluation with Modular Simulation
authors:
- internal: hejing
- external: Jialin Li
- internal: antoine
venue: ACM SIGCOMM 2022 Conference
series: SIGCOMM
year: 2022
month: 8
location: Amsterdam, Netherlands
people:
- hejing
- antoine
projects:
- simbricks
resources:
- type: paperpdf
external: https://simbricks.github.io/documents/22sigcomm_simbricks.pdf
- type: video
external: https://www.youtube.com/watch?v=fSIcPuuI6kk
- type: slides
external: https://simbricks.github.io/documents/22sigcomm_simbricks_slides.pdf
- type: artifact
external: https://github.com/simbricks/sigcomm22-artifact
energy_tracing:
type: workshop
title: |
The Odd One Out: Energy is not like Other Metrics
authors:
- internal: vaastav
- external: Zhiqiang Xie
- internal: matheus
- external: Roberta De Viti
- external: Thomas Davidson
- external: Reyahneh Karimipour
- external: Safya Alzayat
- external: Jonathan Mace
venue: 1st Workshop on Sustainable Computer Systems Design and Implementation
series: HotCarbon
year: 2022
month: 7
location: La Jolla, USA
people:
- vaastav
- matheus
resources:
- type: paperpdf
external: https://vaastavanand.com/assets/pdf/hotcarbon22-anand.pdf
- type: video
external: https://youtu.be/3EWmqhah7Rs
flextoe:
type: conference
title: |
FlexTOE: Flexible TCP Offload with Fine-Grained Parallelism
authors:
- external: Rajath Shashidhara
- external: Timothy Stamler
- internal: antoine
- external: Simon Peter
venue: 19th USENIX Symposium on Networked Systems Design and Implementation
series: NSDI
year: 2022
month: 4
location: Renton, WA, USA
people:
- antoine
projects:
- tas
resources:
- type: paperpdf
external: https://www.usenix.org/system/files/nsdi22-paper-shashidhara.pdf
- type: video
external: https://www.youtube.com/watch?v=0sRLk2zNrdE
- type: slides
external: https://www.usenix.org/system/files/nsdi22_slides_shashidhara.pdf
kugelblitz_ws:
type: workshop
title: |
Exploring Domain-Specific Architectures for Network Protocol Processing
authors:
- internal: artemio
- internal: mehrshad
- internal: antoine
venue: 2021 Cloud@MICRO Workshop
year: 2021
month: 10
location: Virtual
people:
- artemio
- mehrshad
- antoine
projects:
- kugelblitz
resources:
- type: paperpdf
external: https://people.mpi-sws.org/~antoinek/documents/21microcloud_kugelblitz.pdf
- type: video
external: https://www.youtube.com/watch?v=5bUEibxxURw&t=1h31m56s
clockwork:
type: conference
title: |
Serving DNNs like Clockwork: Performance Predictability from the Bottom Up
authors:
- external: Arpan Gujarati
- external: Reza Karimi
- external: Safya Alzayat
- internal: antoine
- external: Ymir Vigfusson
- external: Jonathan Mace
venue: 14th Symposium on Operating Systems Design and Implementation
series: OSDI
year: 2020
month: 11
location: Banff, Canada
awards:
- Distinguished Artifact Award
people:
- antoine
resources:
- type: paperpdf
external: https://www.usenix.org/system/files/osdi20-gujarati.pdf
- type: video
external: https://www.youtube.com/watch?v=wHOpY_MY57Y
- type: slides
external: https://www.usenix.org/sites/default/files/conference/protected-files/osdi20_slides_gujarati.pdf
- type: artifact
external: https://gitlab.mpi-sws.org/cld/ml/clockwork
tas:
type: conference
title: |
TCP Acceleration as an OS Service
authors:
- internal: antoine
- external: Tim Stamler
- external: Simon Peter
- external: Naveen Kr. Sharma
- external: Thomas Anderson
- external: Arvind Krishnamurthy
venue: 14th EuroSys Conference
series: EuroSys
year: 2019
month: 3
location: Dresden, Germany
people:
- antoine
projects:
- tas
resources:
- type: paperpdf
external: https://people.mpi-sws.org/~antoinek/documents/19eurosys_tas.pdf
- type: video
external: https://se.inf.tu-dresden.de/eurosys2019/Video/27_3/Antoine%20Kaufmann.mov
- type: slides
external: https://tcp-acceleration-service.github.io/documents/tas_slides.pptx
- type: artifact
external: https://github.com/tcp-acceleration-service/tas
multitenant_dnn:
type: techreport
title: |
No DNN Left Behind: Improving Inference in the Cloud with Multi-Tenancy
authors:
- external: Amit Samanta
- external: Suhas Shrinivasan
- internal: antoine
- external: Jonathan Mace
venue: arXiv
year: 2019
month: 1
people:
- antoine
resources:
- type: preprint
external: https://arxiv.org/abs/1901.06887
floem:
type: conference
title: |
Floem: Language, Compiler, and Runtime for Network Applications on
Heterogeneous Systems
authors:
- external: Phitchaya Mangpo Phothilimthana
- external: Ming Liu
- internal: antoine
- external: Simon Peter
- external: Rastislav Bodik
- external: Thomas Anderson
venue: 13th Symposium on Operating Systems Design and Implementation
series: OSDI
year: 2018
month: 10
location: Carlsbad, CA, USA
people:
- antoine
resources:
- type: paperpdf
external: https://www.usenix.org/system/files/osdi18-phothilimthana.pdf
- type: audio
external: https://2459d6dc103cb5933875-c0245c5c937c5dedcca3f1764ecc9b2f.ssl.cf2.rackcdn.com/osdi18/phothilimthana.mp3
- type: slides
external: https://www.usenix.org/sites/default/files/conference/protected-files/osdi18_slides_phothilimthana.pdf
- type: artifact
external: https://github.com/mangpo/floem
\ No newline at end of file
<footer>
<div class="container" id="bottombar">
<nav class="social" title="Social Navigation">
<ul>
<li><a href="https://github.com/simbricks" class="github" title="GitHub"></a></li>
<li><a href="https://twitter.com/sim_bricks" class="twitter" title="Twitter"></a></li>
<li><a href="https://join.slack.com/t/simbricks/shared_invite/zt-16y96155y-xspnVcm18EUkbUHDcSVonA" class="slack" title="Slack"></a></li>
</ul>
</nav>
&copy; SimBricks, 2022&ndash;2024
</div>
</footer>
<header id="mainheader">
<nav id="navbar">
<div class="navcontainer">
<a class="brand-logo" href="{{ site.baseurl }}/">
<img src="assets/images/simbricks_logo.svg" alt="SimBricks Logo" id="logo"/>
</a>
<a class="brand" href="{{ site.baseurl }}/">
SimBricks
</a>
<button id="navbutton">=</button>
<script type="text/javascript">
$(document).ready(function(){
$('#navbutton').click(function(){
$('ul.l1').toggleClass("l1-active");
});
});
</script>
<ul class="l1">
{% for p in site.data.navigation.nav %}
{%- if page.permalink == p.link -%}
<li class="current">
{%- else %}
<li>
{%- endif %}
<a href="{{ site.baseurl }}{{ p.link }}">{{ p.title }}</a>
</li>
{% endfor %}
</ul>
</div>
</nav>
</header>
\ No newline at end of file
{%- if person.img -%}
<img class="profile" src="/assets/images/people/{{ person.img }}.png"
alt="{{ person.name }}" title="{{ person.name }}">
{%- else -%}
<img class="profile" src="/assets/images/people/anonymous.png">
{%- endif -%}
\ No newline at end of file
<div class="project-block {{ include.class }}">
<div class="people">
{% for st in project.people %}
{%- assign person = site.data.people.people[st] %}
{% include person-img.html %}
{% endfor %}
</div>
<div class="logo">
{%- if project.logo -%}
<img class="logo" src="/assets/images/{{ project.logo }}"
alt="{{ project.title }} Logo" title="{{ project.title }}">
{%- else -%}
<img class="logo" src="/assets/images/projects/placeholder.svg"
alt="{{ project.title }} Placeholder Logo" title="{{ project.title }}">
{%- endif -%}
</div>
<div class="description">
<h3>{{ project.title }}</h3>
{{ project.description | markdownify }}
</div>
<div class="link">
<a href="{{ project.url | relative_url }}">Learn More</a>
</div>
</div>
\ No newline at end of file
<div class="publist">
{% for p in publications %}
<h3>{{ p.title }}</h3>
<span class="authors">
{% for a in p.authors -%}
{%- if a.internal -%}
{%- assign person = site.data.people.people[a.internal]-%}
<span class="internal">{{ person.name }}</span>
{%- else if -%}
<span class="external">{{ a.external }}</span>
{%- endif -%}
{%- unless forloop.last -%}, {% endunless-%}
{%- endfor %}
</span>
<br>
{%- assign prefix = site.data.publications.types[p.type].prefix -%}
{{ prefix }}<span class="venue">{{ p.venue }}
{%- if p.series %} ({{ p.series }}){%- endif -%}</span>,
{% if p.location %}{{ p.location }},{% endif %} {{ p.year }}.
{%- if p.awards -%}
<br>
{% for a in p.awards -%}
<span class="award">{{ a }}</span>
{%- unless forloop.last -%}, {% endunless-%}
{%- endfor %}
{%- endif -%}
{%- if p.resources -%}
<br>
<span class="resources">
{% for r in p.resources %}
{%- if r.internal -%}
{%- capture link -%}
{{ "/assets/publications/" | relative_url}}{{ r.internal }}
{%- endcapture -%}
{%- else -%}
{%- assign link = r.external -%}
{%- endif -%}
{%- assign label = site.data.publications.restypes[r.type].label -%}
<span class="resource">
<a class="res-{{ r.type }}"
href="{{ link }}"
title="{{ label }}">[{{ label }}]</a>
</span>
{% endfor %}
</span>
{%- endif -%}
{% endfor %}
</div>
\ No newline at end of file
---
body_class: about
layout: base
---
<article class="about">
<section class="research">
<div class="container">
<div class="research-figure">
<img src="assets/images/simbricks_example.svg"
alt="Example of a SimBricks simulation configuration with three
simulated hosts, a server and two clients. We simulate the server in
gem5 and connect to an SSD simulated through FEMU and a Corundum FPGA
NIC simulated through Verilator. The two clients are simulated in QEMU
and connect to a PCIe behavioral NIC model. All three hosts are
connected through a network simulated in ns-3.">
</div>
<div class="research-text">
<h2>Overview</h2>
{{content}}
</div>
</div>
</section>
<section class="features">
<div class="container">
<h2>Key Features</h2>
<ul>
<li class="goal-endtoend"><strong>End-to-End:</strong>
simulate full network systems, with hosts, devices, network, and the
full software stack.
</li>
<li class="goal-scalable"><strong>Scalable:</strong>
simulate large network systems comprising tens or hundreds of separate
hosts and devices.
</li>
<li class="goal-fast"><strong>Fast:</strong>
keep simulation times as low as possible.
</li>
<li class="goal-modular"><strong>Modular:</strong>
enable flexible composition of simulators, where components can be added
and swapped independently.
</li>
<li class="goal-accurate"><strong>Accurate:</strong>
preserve accuracy of constituent simulators, correctly interface and
synchronize components.
</li>
<li class="goal-deterministic"><strong>Deterministic:</strong>
keep end-to-end simulation deterministic when individual simulators are
deterministic.
</li>
</ul>
</div>
</section>
<section class="techniques">
<div class="container">
<h2>Techniques</h2>
<ul>
<li class="technique-interfaces">
<h3>Fixed natural component simulator interfaces</h3>
SimBricks defines an interface for each component type
to enable modular composition of simulators...
</li>
<li class="technique-sync">
<h3>Accurate and efficient synchronization</h3>
SimBricks ensures accurate simulation through correct time
synchronization, but with minimal runtime overhead...
</li>
<li class="technique-loose">
<h3>Loose coupling with message passing</h3>
SimBricks runs component simulators as separate processes that
communicate through message passing...
</li>
<li class="technique-parallel">
<h3>Parallel execution with shared memory queues</h3>
SimBricks runs simulators in parallel on different host cores and
connects them through optimized shared-memory queues...
</li>
</ul>
</div>
</section>
<section class="news">
<div class="container">
<h2>News</h2>
<div class="news-slider-wrapper">
<div class="news-slider">
{% for n in site.data.news.news %}
<div class="news-item">
<h3>{{ n.title }}</h3>
<div class="date" title="Date">{{ n.date }}</div>
<div class="text">{{ n.text | markdownify }}</div>
</div>
{% endfor %}
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){
$('.news-slider').slick({
infinite: false,
slidesToShow: 3,
slidesToScroll: 1,
prevArrow: '<button type="button" class="news-prev">&lt;</button>',
nextArrow: '<button type="button" class="news-next">&gt;</button>',
responsive: [
{
breakpoint: 850,
settings: { slidesToShow: 2, },
},
{
breakpoint: 750,
settings: { slidesToSho5w: 1, },
}
],
});
});
</script>
</div>
</section>
</article>
\ No newline at end of file
<!DOCTYPE html>
<html lang="{{ site.lang | default: "en-US" }}">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="author" content="SimBricks Team" />
<meta charset="utf-8">
<title>
{%- if page.no_page_title -%}
{{ site.title }}
{%- else -%}
{{ page.title }} - {{ site.title }}
{%- endif -%}
</title>
<link rel="stylesheet" href="{{ "/assets/css/main.css" | relative_url }}">
<script src="{{ "/assets/js/jquery-3.7.0.min.js" | relative_url }}">
</script>
<script src="{{ "/assets/js/slick.min.js" | relative_url }}"></script>
<meta name="google-site-verification" content="h8XBiCUDWlwWCJb8NeznrVKI1CDTSnnQuH03ef6Z9Ys" />
</head>
<body
{%- if layout.body_class %}
class="{{ layout.body_class }}"
{%- endif %}>
{%- include header.html %}
<main>
<header class="page-header page-header-{{ page.header_color }}">
<div class="container">
<div class="text">
<h1>{{page.title}}</h1>
<p class="subtitle">{{page.subtitle}}</p>
</div>
</div>
<div class="clear"></div>
{%- if page.banner -%}
<div class="banner">
<img src="assets/images/{{ page.banner }}">
</div>
{%- endif -%}
</header>
{{ content }}
</main>
{%- include footer.html %}
</body>
</html>
\ No newline at end of file
---
layout: base
---
<article class="default">
{{ content }}
</article>
\ No newline at end of file
---
layout: base
---
<article class="people">
{%- for category in site.data.people.categories %}
{%- assign catkey = category[0] %}
{%- assign cat = category[1] %}
<section>
<div class="container">
<h2 class="category" id="{{ catkey }}">{{ cat.title }}</h2>
{%- assign categorized_people = site.data.people.people | where: "category", catkey -%}
{%- assign sorted_people_ = categorized_people | sort: cat.sort_by %}
{%- if cat.sort_reverse -%}
{%- assign sorted_people = sorted_people_ | reverse %}
{%- else -%}
{%- assign sorted_people = sorted_people_%}
{%- endif -%}
{%- if cat.format == "full" -%}
<div class="grid">
{%- for person in sorted_people -%}
<div class="grid-item">
<div class="card hoverable">
{%- if person.website %}
<a href="{{ person.website }}">
{%- endif %}
{%- if person.img -%}
<img class="profile" src="/assets/images/people/{{ person.img }}.png">
{%- else -%}
<img class="profile" src="/assets/images/people/anonymous.png">
{%- endif -%}
<h3 class="card-title">{{ person.name }}</h3>
{%- if person.website %}
</a>
{%- endif %}
<p class="pronouns">{{ person.pronouns }}
</p>
<p class="description">{{ person.description }}</p>
</div>
</div>
{%- endfor %}
</div>
{%- else -%}
<ul>
{%- for person in sorted_people -%}
<li>
{%- if person.website -%}<a href="{{ person.website }}">{%- endif -%}
{{ person.name }}
{%- if person.website -%}</a>{%- endif %}
({{person.description}})
</li>
{%- endfor %}
</ul>
{%- endif -%}
</div>
</section>
{% endfor %}
<section>
<div class="container">
<h2 class="category">Get in Touch</h2>
{{ content }}
</div>
</section>
</article>
\ No newline at end of file
---
layout: base
---
<article class="project">
<section>
<div class="container">
{{ content }}
</div>
</section>
{%- assign all_pubs = site.data.publications.publications -%}
{%- assign publications = all_pubs |
where_exp: "pub", "pub.projects contains page.slug" -%}
{%- if publications -%}
<section class="publications">
<div class="titlebar">
<div class="container">
<h2>Publications</h2>
</div>
</div>
<div class="container">
{% include publist.html %}
</div>
</section>
{%- endif %}
</article>
\ No newline at end of file
---
layout: base
---
<article class="projects">
{%- assign projects = site.projects
| where: 'parent', nil
| sort: 'order'
| reverse -%}
{% for project in projects %}
<section class="{% cycle 'odd', 'even' %}"">
<div class="container">
{% include project-block.html class="top" %}
<div class="subprojects">
{%- assign subprojects = site.projects
| where: 'parent', project.slug
| sort: 'order'
| reverse -%}
{% for project in subprojects %}
{% include project-block.html class="sub" %}
{% endfor %}
</div>
</div>
</section>
{% endfor %}
</article>
\ No newline at end of file
---
layout: base
---
<article class="publications">
{%- for ty in site.data.publications.types %}
{%- assign typekey = ty[0] %}
{%- assign type = ty[1] %}
<section>
<div class="titlebar">
<div class="container">
<h2>{{ type.title }}</h2>
</div>
</div>
<div class="container">
<div class="publications">
{%- assign publications = site.data.publications.publications |
where: 'type', typekey -%}
{%- include publist.html -%}
</div>
</div>
</section>
{%- endfor -%}
</article>
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment