Skip to content

Commit e28bdc3

Browse files
authored
gsoc: add summaries for 2011 and 2012 (#1716)
* gsoc: add summaries for 2011 and 2012 * placate linkchecker * placate linkchecker
1 parent 9534aa1 commit e28bdc3

File tree

4 files changed

+210
-0
lines changed

4 files changed

+210
-0
lines changed

.github/config/mdcheck.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
{
22
"ignorePatterns": [
3+
{
4+
"pattern": "http://dtrace.org"
5+
},
36
{
47
"pattern": "https://www.tensorflow.org/guide/keras"
58
},

_activities/gsoc.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,8 @@ See here the student blog posts from previous years:
5656
* [Student blogs 2024]({{ site.baseurl }}/gsoc/2024/blogs.html)
5757
* [Student blogs 2023]({{ site.baseurl }}/gsoc/2023/blogs.html)
5858
* [Student blogs 2022]({{ site.baseurl }}/gsoc/2022/blogs.html)
59+
* [Blogpost summarizing 2012]({{ site.baseurl }}/gsoc/2012/blogs.html)
60+
* [Blogpost summarizing 2011]({{ site.baseurl }}/gsoc/2011/blogs.html)
5961

6062

6163
### For Projects and Mentors

gsoc/2011/blogs.md

Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
---
2+
title: CernVM's fruitful Summer - GSoC 2011
3+
layout: plain
4+
year: 2011
5+
---
6+
{:refdef: style="text-align: center;"}
7+
![gsoc-logo-2011](https://storage.googleapis.com/gweb-developer-goog-blog-assets/images_archive/original_images/GSOC_2011_300x200px_URL.png)
8+
{: refdef}
9+
10+
This was the first year [CERN](http://public.web.cern.ch/public/)
11+
participated in *[Google Summer of Code](http://code.google.com/soc/)*,
12+
and it turned out to be an amazing experience for us! We were given four
13+
students to mentor, all of whom proved to be very skilled developers.
14+
The students quickly familiarized themselves with our code base and
15+
managed to make valuable contributions within the three month time frame
16+
of *Google Summer of Code*. Our students were very open and willing to
17+
learn and spent a considerable amount of their time researching tools,
18+
libraries, and the latest technological developments. As a result, all
19+
four students were able to solve their problems and come up with
20+
interesting ideas for future development. The code and the documentation
21+
they produced is available
22+
[here](http://code.google.com/p/google-summer-of-code-2011-cernvm/downloads/list).
23+
The specific problems (projects) that we suggested to our students
24+
spanned several domains, ranging from consistent replication of
25+
terabytes of data across several remote sites to automated testing of
26+
virtual machine releases.
27+
28+
**Josip Lisec** was working on the development of the monitoring system
29+
for the [CernVM](http://cernvm.cern.ch/portal/) Co-Pilot framework,
30+
which is mainly used as a distributed computing platform within the
31+
LHC\@home 2.0 volunteer computing project. The [LHC\@home
32+
2.0](http://lhcathome2.cern.ch/) project currently has more than 9,000
33+
registered users who contribute their spare CPU cycles for the
34+
simulation of the particle collision events in CERN\'s [Large Hadron
35+
Collider](https://home.cern/science/accelerators/large-hadron-collider) (LHC).
36+
After some research, Josip decided to integrate existing tools with the
37+
Co-Pilot as opposed to trying to reinvent the wheel by rewriting
38+
everything from scratch. This resulted in a nicely engineered monitoring
39+
framework, parts of which were put into production while the *Google
40+
Summer of Code* was still going on (Josip\'s developments have now been
41+
fully integrated after completion of the program). Since this was
42+
Josip\'s first encounter with Perl, he has been seen adding support for
43+
\'[my](http://perldoc.perl.org/functions/my.html)\' keyword to every
44+
other major programming language since the *Google Summer of Code*
45+
concluded.\
46+
\
47+
The goal of **Yin Qiu**\'s project was to devise a mechanism for a
48+
consistent replication of changes made to the central repository of
49+
[CernVM File System](http://cernvm.cern.ch)
50+
(CernVM-FS) to a globally distributed set of mirror servers. CernVM-FS
51+
is used to host and distribute the application software of CERN LHC
52+
experiments to hundreds of Grid sites, as well as the laptops and
53+
workstations of users worldwide. As such, it is currently one of the
54+
central components of the distributed computing infrastructures on which
55+
CERN [ATLAS](http://www.atlas.ch/) and
56+
[LHCb](http://user.web.cern.ch/public/en/LHC/LHCb-en.html) experiments
57+
rely. Yin\'s approach was to organize CernVM-FS mirrors into a
58+
Paxos-managed replication network and to enforce state machine version
59+
transitions on them. Following the suggestion of Jakob, his mentor, Yin
60+
implemented a messaging framework which is used to orchestrate the
61+
replication process and facilitates the implementation of new features.
62+
He also managed to implement a couple of Python plugins which ensure the
63+
consistency of data across replicas. The project is currently in the
64+
state of a working prototype.\
65+
\
66+
**Jesse Williamson** took up the challenge of designing a new library
67+
for CernVM-FS to consolidate support for various cryptographic hashing
68+
algorithms. The first task was to survey the implementation of CernVM-FS
69+
and establish a list of requirements. Next, quite a bit of effort was
70+
spent on designing the library specifically so that it would be easy to
71+
use, comparatively simple to extend, and robust enough to support
72+
extensions like a streaming interface and compression. Since CernVM-FS
73+
is heavily used in production, it has been very important to make sure
74+
that the new developments do not break anything. Jesse has developed a
75+
set of unit tests which ensure that all the existing features and
76+
properties were maintained.\
77+
\
78+
The design of new C++ libraries was certainly an improvement, but it
79+
also became clear late in the cycle that a further abstraction to fully
80+
separate digests and hash functions will be necessary to avoid memory
81+
fragmentation issues and ensure stronger const-correctness\
82+
\
83+
**Jonathan Gillet** worked on implementing a solution for automating the
84+
testing of CernVM virtual machine images on multiple hypervisors and
85+
operating systems. The solution, which is a ready to use testing
86+
infrastructure for CernVM, was developed in collaboration with other
87+
open source projects such as AMD
88+
Tapper (used for the reports and web interface), [libvirt](http://libvirt.org/)
89+
(interaction with hypervisors), and
90+
Homebrew (OS X support).  The main
91+
goals of the project were accomplished with support for all major
92+
hypervisors running on Linux and OS X platforms. The framework automates
93+
the task of downloading and configuring the CernVM images on the fly,
94+
and executing a series of thorough tests which check various features of
95+
CernVM images before release. Documentation was also an important goal
96+
of the project; in total there are now over two hundred pages of
97+
documentation which cover everything from setting up the testing
98+
infrastructure and virtual machines to a complete API reference.\
99+
\
100+
We certainly enjoyed *Google Summer of Code* 2011, and we sincerely
101+
congratulate all of our students and mentors for successfully completing
102+
the program!\
103+
\
104+
*By Artem Harutyunyan, Senior Fellow, CernVM Project (CERN) and Google
105+
Summer of Code Mentor*\
106+
[(original article on Google Open Source
107+
Blog)](http://google-opensource.blogspot.fr/2011/12/cernvms-fruitful-summer.html)

gsoc/2012/blogs.md

Lines changed: 98 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,98 @@
1+
---
2+
title: CERN Summer Thrills GSoC 2012
3+
layout: plain
4+
year: 2012
5+
---
6+
7+
{:refdef: style="text-align: center;"}
8+
![gsoc-logo](https://wiki.osgeo.org/w/images/a/a7/Gsoc-2012-logo-color.png){: width="600" }
9+
{: refdef}
10+
11+
12+
For the physics software development group at
13+
[CERN](http://public.web.cern.ch/public/), our second year of *[Google
14+
Summer of Code](http://code.google.com/soc/)* couldn't have come at a
15+
better time. Motivated by CernVM\'s [awesome experience in
16+
2011](http://google-opensource.blogspot.ch/2011/12/cernvms-fruitful-summer.html),
17+
our colleagues from the [Geant4](http://geant4.cern.ch/) and
18+
[ROOT](http://root.cern.ch) software projects joined us as mentors this
19+
summer. And while physicists around the world snatched the first
20+
evidence of a long-sought [Higgs
21+
boson](http://cds.cern.ch/record/1459565) from the Large Hadron Collider
22+
(LHC), our seven *Google Summer of Code* students worked on core parts
23+
of the open source software engine that makes LHC data processing
24+
possible.
25+
26+
Two of our students worked with the Geant4 team at CERN. Geant4 is a
27+
toolkit for the simulation of the response of a material when
28+
high-energetic particles are passing through it. Geant4 can be used to
29+
model a gas detector, a gamma-ray telescope, an electronic device next
30+
to an accelerator or the inside of a satellite. In order to keep up with
31+
the rate of real data coming from the LHC detectors, Geant4 has to be
32+
both accurate and fast.
33+
 
34+
35+
- Stathis Kamperis improved the speed of Geant4 by re-ordering the
36+
simulation of particles according to particle type. By simulating,
37+
for instance, first all electrons, than all photons, and so on, the
38+
number of instruction cache misses decreases. In the course of this
39+
work, Stathis also ported Geant4 to Solaris which gives us access to
40+
the very powerful [DTrace](http://dtrace.org/blogs/) profiling
41+
machinery.
42+
- Dhruva Tirumala Bukkapatnam contemplated Geant4 pointers and data
43+
structures. He developed code for a particle navigation algorithm
44+
optimized for use on GPU architectures.
45+
46+
\
47+
Two more students were working together with the ROOT team. The ROOT
48+
framework is the main working horse for LHC experiments to store,
49+
analyze, and visualize their data.
50+
 
51+
52+
- Omar Zapata Mesa worked on an
53+
[MPI](http://www.mcs.anl.gov/research/projects/mpi/) interface for
54+
ROOT. On a cluster of machines, the MPI interface enables ROOT to
55+
toss around its C++ objects from node to node while also integrating
56+
with ROOT\'s C++ interpreter.
57+
- Eamon Ford worked on the CERN iOS App.The App brings CERN news and
58+
information on an iPad or iPhone. In case you can't sleep at night,
59+
you can now peek at the live display of particle collisions from
60+
inside the LHC.
61+
62+
For the CernVM base technology, we had three more students working with
63+
us this summer. CernVM provides a virtual appliance used to develop and
64+
run LHC data processing applications on the distributed and
65+
heterogeneous computing infrastructure that is provided by hundreds of
66+
physics institutes and research labs around the world.
67+
 
68+
69+
- Josip Lisec, back for his second *Google Summer of Code*, worked on
70+
the log analysis and visualization of CernVM Co-Pilot, the job
71+
distribution system which powers the [LHC\@home
72+
Test4Theory](http://lhcathome2.cern.ch/) volunteer computing
73+
project. Want to see the world map of active volunteers from the
74+
19th of November at 3:07pm?  Check out the [Co-Pilot
75+
dashboard](http://www.youtube.com/watch?v=UXHSXt9poCA).
76+
- Francesco Ruvolo worked on broken network services, such as
77+
misconfigured DNS or HTTP servers. Breaking such services in a
78+
controlled way comes in handy when simulating the behavior of a
79+
CernVM running on a hotel WiFi.
80+
- Rachee Singh programmed maintenance tools for the content
81+
distribution network that is used by the CernVM File System to
82+
distribute terabytes of experiment software to all the worker nodes.
83+
All the proxy servers of the content distribution network can now be
84+
plotted on a map and every CernVM can automatically find a close
85+
proxy by means of a [Voronoi
86+
diagram](http://en.wikipedia.org/wiki/Voronoi_diagram) produced by
87+
Rachee\'s code.
88+
89+
90+
Overall, we were very glad to see so much interest and enthusiasm from
91+
the student programmers in LHC software tools. We'd like to
92+
congratulate all of our students on their hard work and on successfully
93+
completing the program!
94+
95+
Sun, 09/30/2012 - 00:00
96+
*By Jakob Blomer, CERN Organization Administrator*
97+
[(original article on Google Open Source
98+
Blog)](http://google-opensource.blogspot.fr/2012/12/cern-summer-thrills.html)

0 commit comments

Comments
 (0)