<commit_before>% This is "sig-alternate.tex" V2.1 April 2013
% This file should be compiled with V2.5 of "sig-alternate.cls" May 2012
%
% This example file demonstrates the use of the 'sig-alternate.cls'
% V2.5 LaTeX2e document class file. It is for those submitting
% articles to ACM Conference Proceedings WHO DO NOT WISH TO
% STRICTLY ADHERE TO THE SIGS (PUBS-BOARD-ENDORSED) STYLE.
% The 'sig-alternate.cls' file will produce a similar-looking,
% albeit, 'tighter' paper resulting in, invariably, fewer pages.
%
% ----------------------------------------------------------------------------------------------------------------
% This .tex file (and associated .cls V2.5) produces:
%       1) The Permission Statement
%       2) The Conference (location) Info information
%       3) The Copyright Line with ACM data
%       4) NO page numbers
%
% as against the acm_proc_article-sp.cls file which
% DOES NOT produce 1) thru' 3) above.
%
% Using 'sig-alternate.cls' you have control, however, from within
% the source .tex file, over both the CopyrightYear
% (defaulted to 200X) and the ACM Copyright Data
% (defaulted to X-XXXXX-XX-X/XX/XX).
% e.g.
% \CopyrightYear{2007} will cause 2007 to appear in the copyright line.
% \crdata{0-12345-67-8/90/12} will cause 0-12345-67-8/90/12 to appear in the copyright line.
%
% ---------------------------------------------------------------------------------------------------------------
% This .tex source is an example which *does* use
% the .bib file (from which the .bbl file % is produced).
% REMEMBER HOWEVER: After having produced the .bbl file,
% and prior to final submission, you *NEED* to 'insert'
% your .bbl file into your source .tex file so as to provide
% ONE 'self-contained' source file.
%
% ================= IF YOU HAVE QUESTIONS =======================
% Questions regarding the SIGS styles, SIGS policies and
% procedures, Conferences etc. should be sent to
% <NAME> (<EMAIL>)
%
% Technical questions _only_ to
% <NAME> (<EMAIL>)
% ===============================================================
%
% For tracking purposes - this is V2.0 - May 2012

\documentclass{sig-alternate}

\graphicspath{{../img/}}

% *** SPECIALIZED LIST PACKAGES ***
%
\usepackage{algorithmic}

\usepackage{array}

% *** PDF, URL AND HYPERLINK PACKAGES ***
%
\usepackage{url}



\begin{document}

% Copyright
\setcopyright{acmcopyright}
%\setcopyright{acmlicensed}
%\setcopyright{rightsretained}
%\setcopyright{usgov}
%\setcopyright{usgovmixed}
%\setcopyright{cagov}
%\setcopyright{cagovmixed}

%Conference
\conferenceinfo{GECCO '16}{Denver, CO, USA}
% --- End of Author Metadata ---

\title{Performance for the masses: Experiments with A Web Based Architecture to Harness Volunteer Resources 
for Low Cost Distributed Evolutionary Computation }
%
% You need the command \numberofauthors to handle the 'placement
% and alignment' of the authors beneath the title.
%
% For aesthetic reasons, we recommend 'three authors at a time'
% i.e. three 'name/affiliation blocks' be placed beneath the title.
%
% NOTE: You are NOT restricted in how many 'rows' of
% "name/affiliations" may appear. We just ask that you restrict
% the number of 'columns' to three.
%
% Because of the available 'opening page real-estate'
% we ask you to refrain from putting more than six authors
% (two rows with three columns) beneath the article title.
% More than six makes the first-page appear very cluttered indeed.
%
% Use the \alignauthor commands to handle the names
% and affiliations for an 'aesthetic maximum' of six authors.
% Add names, affiliations, addresses for
% the seventh etc. author(s) as the argument for the
% \additionalauthors command.
% These 'additional authors' will be output/set for you
% without further effort on your part as the last section in
% the body of your article BEFORE References or any Appendices.

\numberofauthors{5} %  in this sample file, there are a *total*
% of EIGHT authors. SIX appear on the 'first-page' (for formatting
% reasons) and the remaining two appear in the \additionalauthors section.
%
% \author{Juan-J.~Merelo, Dept. of Computer Architecture and Technology
%   and CITIC, University of Granada, Granada, Spain \\
% <NAME>, Dept. of Graduate Studies, Instituto
% Tecnológico de Tijuana, Tijuana, M\'exico\\
% <NAME>, Dept. of Computer Architecture and Technology, University of Granada, Granada, Spain\\
% <NAME>, Dept. of Computer Architecture and Technology, University of Granada, Granada, Spain\\
% Paloma de las Cuevas, Dept. of Computer Architecture and Technology,
% University of Granada, Granada, Spain\\
% Nuria Rico, Dept. of Statistics and Operational Research, University of Granada, Granada, Spain%

% \thanks{Corresponding author: Juan-J.~Merelo (Email: <EMAIL>).}%
% }
\author{
% You can go ahead and credit any number of authors here,
% e.g. one 'row of three' or two rows (consisting of one row of three
% and a second row of one, two or three).
%
% The command \alignauthor (no curly braces needed) should
% precede each author name, affiliation/snail-mail address and
% e-mail address. Additionally, tag each line of
% affiliation/address with \affaddr, and tag the
% e-mail address with \email.
%
% 1st. author
\alignauthor
<NAME>\titlenote{Dr.~Trovato insisted his name be first.}\\
       \affaddr{Institute for Clarity in Documentation}\\
       \affaddr{1932 Wallamaloo Lane}\\
       \affaddr{Wallamaloo, New Zealand}\\
       \email{<EMAIL>}
% 2nd. author
\alignauthor
<NAME>\titlenote{The secretary disavows
any knowledge of this author's actions.}\\
       \affaddr{Institute for Clarity in Documentation}\\
       \affaddr{P.O. Box 1212}\\
       \affaddr{Dublin, Ohio 43017-6221}\\
       \email{<EMAIL>}
% 3rd. author
\alignauthor <NAME>}rv{\"a}ld\titlenote{This author is the
one who did all the really hard work.}\\
       \affaddr{The Th{\o}rv{\"a}ld Group}\\
       \affaddr{1 Th{\o}rv{\"a}ld Circle}\\
       \affaddr{Hekla, Iceland}\\
       \email{<EMAIL>}
\and  % use '\and' if you need 'another row' of author names
% 4th. author
\alignauthor <NAME>\\
       \affaddr{Brookhaven Laboratories}\\
       \affaddr{Brookhaven National Lab}\\
       \affaddr{P.O. Box 5000}\\
       \email{<EMAIL>}
% 5th. author
\alignauthor <NAME>\\
       \affaddr{NASA Ames Research Center}\\
       \affaddr{Moffett Field}\\
       \affaddr{California 94035}\\
       \email{<EMAIL>}
}

\maketitle

\begin{abstract}

Using the browser as a computing resource in volunteer computing has presented several advantages, 
but it remains a challenge to fully harness both the users' behaviour and the browser's capabilities.
That is why we have enhanced {\sf NodIO}, a framework used to create client-server architectures 
for distributed evolutionary algorithms, resulting in {\sf
  NodIO-W$^2$}, whose results we present in this paper.
{\sf NodIO-W$^2$} leverages the HTML5 Web Workers specification to execute in the background several clients per
browser, so that the the number of generations per user could be improved. The enhancements on the NodIO architecture,
along with some initial results on the expected performance and scaling behavior when the number of users is increased,
are introduced. We also use the experimental data to find out what kind of patterns the user behavior follows by examining 
the resources they devote to our experiment, and try to fit them in some statistical distribution. In general, 
our experiments prove, first, that {\sf NodIO} is a flexible and low-overhead platform to perform distributed computation
experiments that include volunteers, and then that user behavior
follows some patterns, and, thus, are amenable to a model and thus predictable.

\end{abstract}

\keywords{Volunteer computing, distributed computing, cloud computing}


%---------------------------------------------------------------
\section{Introduction}

Nowadays there is a big and increasing number of
distributed evolutionary computation software frameworks available on
the market, usually as open source frameworks \cite{Parejo12Survey}. 
Most of these frameworks have 
two features: they are {\em desktop} applications, that is, they must
be compiled or run directly on the operating system layer and, second,
they assume that the nodes that are going to run the system are under
the control of developers or they at least have access to them.

%Mario: Is NodIO presented here after the cut? 
%TO DO: Add reference
There is, then, space for frameworks that do not make any of these
assumptions, such as {\sf NodIO} presented in \cite{2016arXiv160101607Manom}. {\sf NodIO} is basically <commit_msg>New abstract written<commit_after>% This is "sig-alternate.tex" V2.1 April 2013
% This file should be compiled with V2.5 of "sig-alternate.cls" May 2012
%
% This example file demonstrates the use of the 'sig-alternate.cls'
% V2.5 LaTeX2e document class file. It is for those submitting
% articles to ACM Conference Proceedings WHO DO NOT WISH TO
% STRICTLY ADHERE TO THE SIGS (PUBS-BOARD-ENDORSED) STYLE.
% The 'sig-alternate.cls' file will produce a similar-looking,
% albeit, 'tighter' paper resulting in, invariably, fewer pages.
%
% ----------------------------------------------------------------------------------------------------------------
% This .tex file (and associated .cls V2.5) produces:
%       1) The Permission Statement
%       2) The Conference (location) Info information
%       3) The Copyright Line with ACM data
%       4) NO page numbers
%
% as against the acm_proc_article-sp.cls file which
% DOES NOT produce 1) thru' 3) above.
%
% Using 'sig-alternate.cls' you have control, however, from within
% the source .tex file, over both the CopyrightYear
% (defaulted to 200X) and the ACM Copyright Data
% (defaulted to X-XXXXX-XX-X/XX/XX).
% e.g.
% \CopyrightYear{2007} will cause 2007 to appear in the copyright line.
% \crdata{0-12345-67-8/90/12} will cause 0-12345-67-8/90/12 to appear in the copyright line.
%
% ---------------------------------------------------------------------------------------------------------------
% This .tex source is an example which *does* use
% the .bib file (from which the .bbl file % is produced).
% REMEMBER HOWEVER: After having produced the .bbl file,
% and prior to final submission, you *NEED* to 'insert'
% your .bbl file into your source .tex file so as to provide
% ONE 'self-contained' source file.
%
% ================= IF YOU HAVE QUESTIONS =======================
% Questions regarding the SIGS styles, SIGS policies and
% procedures, Conferences etc. should be sent to
% <NAME> (<EMAIL>)
%
% Technical questions _only_ to
% <NAME> (<EMAIL>)
% ===============================================================
%
% For tracking purposes - this is V2.0 - May 2012

\documentclass{sig-alternate}

\graphicspath{{../img/}}

% *** SPECIALIZED LIST PACKAGES ***
%
\usepackage{algorithmic}

\usepackage{array}

% *** PDF, URL AND HYPERLINK PACKAGES ***
%
\usepackage{url}



\begin{document}

% Copyright
\setcopyright{acmcopyright}
%\setcopyright{acmlicensed}
%\setcopyright{rightsretained}
%\setcopyright{usgov}
%\setcopyright{usgovmixed}
%\setcopyright{cagov}
%\setcopyright{cagovmixed}

%Conference
\conferenceinfo{GECCO '16}{Denver, CO, USA}
% --- End of Author Metadata ---

\title{Performance for the masses: Experiments with A Web Based Architecture to Harness Volunteer Resources 
for Low Cost Distributed Evolutionary Computation }
%
% You need the command \numberofauthors to handle the 'placement
% and alignment' of the authors beneath the title.
%
% For aesthetic reasons, we recommend 'three authors at a time'
% i.e. three 'name/affiliation blocks' be placed beneath the title.
%
% NOTE: You are NOT restricted in how many 'rows' of
% "name/affiliations" may appear. We just ask that you restrict
% the number of 'columns' to three.
%
% Because of the available 'opening page real-estate'
% we ask you to refrain from putting more than six authors
% (two rows with three columns) beneath the article title.
% More than six makes the first-page appear very cluttered indeed.
%
% Use the \alignauthor commands to handle the names
% and affiliations for an 'aesthetic maximum' of six authors.
% Add names, affiliations, addresses for
% the seventh etc. author(s) as the argument for the
% \additionalauthors command.
% These 'additional authors' will be output/set for you
% without further effort on your part as the last section in
% the body of your article BEFORE References or any Appendices.

\numberofauthors{5} %  in this sample file, there are a *total*
% of EIGHT authors. SIX appear on the 'first-page' (for formatting
% reasons) and the remaining two appear in the \additionalauthors section.
%
% \author{Juan-J.~Merelo, Dept. of Computer Architecture and Technology
%   and CITIC, University of Granada, Granada, Spain \\
% <NAME>, Dept. of Graduate Studies, Instituto
% Tecnológico de Tijuana, Tijuana, M\'exico\\
% <NAME>, Dept. of Computer Architecture and Technology, University of Granada, Granada, Spain\\
% <NAME>, Dept. of Computer Architecture and Technology, University of Granada, Granada, Spain\\
% Paloma de las Cuevas, Dept. of Computer Architecture and Technology,
% University of Granada, Granada, Spain\\
% Nuria Rico, Dept. of Statistics and Operational Research, University of Granada, Granada, Spain%

% \thanks{Corresponding author: Juan-J.~Merelo (Email: <EMAIL>).}%
% }
\author{
% You can go ahead and credit any number of authors here,
% e.g. one 'row of three' or two rows (consisting of one row of three
% and a second row of one, two or three).
%
% The command \alignauthor (no curly braces needed) should
% precede each author name, affiliation/snail-mail address and
% e-mail address. Additionally, tag each line of
% affiliation/address with \affaddr, and tag the
% e-mail address with \email.
%
% 1st. author
\alignauthor
<NAME>\titlenote{Dr.~Trovato insisted his name be first.}\\
       \affaddr{Institute for Clarity in Documentation}\\
       \affaddr{1932 Wallamaloo Lane}\\
       \affaddr{Wallamaloo, New Zealand}\\
       \email{<EMAIL>}
% 2nd. author
\alignauthor
<NAME>\titlenote{The secretary disavows
any knowledge of this author's actions.}\\
       \affaddr{Institute for Clarity in Documentation}\\
       \affaddr{P.O. Box 1212}\\
       \affaddr{Dublin, Ohio 43017-6221}\\
       \email{<EMAIL>}
% 3rd. author
\alignauthor <NAME>}rv{\"a}ld\titlenote{This author is the
one who did all the really hard work.}\\
       \affaddr{The Th{\o}rv{\"a}ld Group}\\
       \affaddr{1 Th{\o}rv{\"a}ld Circle}\\
       \affaddr{Hekla, Iceland}\\
       \email{<EMAIL>}
\and  % use '\and' if you need 'another row' of author names
% 4th. author
\alignauthor <NAME>\\
       \affaddr{Brookhaven Laboratories}\\
       \affaddr{Brookhaven National Lab}\\
       \affaddr{P.O. Box 5000}\\
       \email{<EMAIL>}
% 5th. author
\alignauthor <NAME>\\
       \affaddr{NASA Ames Research Center}\\
       \affaddr{Moffett Field}\\
       \affaddr{California 94035}\\
       \email{<EMAIL>}
}

\maketitle

\begin{abstract}

Using the browser as a computing resource in volunteer computing presents several advantages, 
but it remains a challenge to harness the browser's capabilities and
to model the user's behavior so that those capabilities can be
leveraged optimally. In this paper we present the results of several
experiments with a volunteer computing framework called {\sf NodIO}
that uses JavaScript on the client and on the server and is easily
deployable in any kind of cloud infrastructure, including free
ones. We use different client configurations to find out which one is
able to get the user to lend more computing cycles and test different
problems to check the influence it has on said performance.
From these experiments we can already draw some conclusions, besides
the fact that volunteer computing can be a valuable computing
resource: the user has to be kept engaged in some way to be able to
use as many computing cycles as possible, the client has to be built
to use the computer capabilities fully, and there is some common model
to all sets of users, following a common statistical distribution. As
a pragmatic result, establishing trust with the user by open sourcing
not only the software, but also the data, is essential to have an user
base as wide as possible. 

\end{abstract}

\keywords{Volunteer computing, distributed computing, cloud computing}


%---------------------------------------------------------------
\section{Introduction}

Nowadays there is a big and increasing number of
distributed evolutionary computation software frameworks available on
the market, usually as open source frameworks \cite{Parejo12Survey}. 
Most of these frameworks have 
two features: they are {\em desktop} applications, that is, they must
be compiled or run directly on the operating system layer and, second,
they assume that the nodes that are going to run the system are under
the control of developers or they at least have access to them.

%Mario: Is NodIO presented here after the cut? 
%TO DO: Add reference
There is, then, space for frameworks that do not make any of these
assumptions, such as {\sf NodIO} presented in \cite{2016arXiv160101607Manom}. {\sf NodIO} is basically 
{'fraction_non_alphanumeric': 0.13077012294131293, 'fraction_numerical': 0.013627928554859661, 'mean_word_length': 3.442297784647089, 'pattern_counts': {'":': 0, '<': 39, '<?xml version=': 0, '>': 39, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2117061', 'n_tokens_mistral': 5079, 'n_tokens_neox': 4713, 'n_words': 2139}