@article{dSKGFCFC:JPDC10,
author = {da Silva e Silva, Francisco Jos\'{e} and Kon, Fabio and Goldman, Alfredo and Finger,
Marcelo and de Camargo, Raphael Y. and Filho, Fernando Castor and Costa, F\'{a}bio M.},
title = {Application execution management on the InteGrade opportunistic grid middleware},
journal = {Journal of Parallel and Distributed Computing},
volume = {70},
number = {5},
pages = {573--583},
year = {2010},
http = {http://dx.doi.org/10.1016/j.jpdc.2010.01.010},
pdf = {pdf/dSKGFCFC10.pdf},
keywords = {Grid computing, Opportunistic grid, Resource management, Fault tolerance},
abstract = {The InteGrade project is a multi-university effort to build a novel
grid computing middleware based on the opportunistic use of resources belonging
to user workstations. The InteGrade middleware currently enables the execution
of sequential, bag-of-tasks, and parallel applications that follow the BSP or the
MPI programming models.
This article presents the lessons learned over the last five years of the InteGrade
development and describes the solutions achieved concerning the support for robust
application execution. The contributions cover the related fields of application
scheduling, execution management, and fault tolerance. We present our solutions,
describing their implementation principles and evaluation through the analysis of
several experimental results.}
}
@article{FGM:WN10,
author = {Ferreira, Afonso and Goldman, Alfredo and Monteiro, Julian},
title = {Performance evaluation of routing protocols for MANETs with known connectivity patterns using evolving graphs},
journal = {Wireless Networks},
volume = {16},
number = {},
pages = {627--640},
year = {2010},
http = {http://dx.doi.org/10.1007/s11276-008-0158-6},
pdf = {http://www.springerlink.com/content/c82014477847t646/fulltext.pdf},
keywords = {Ad hoc wireless networks, Sensor networks, Evolving graphs, Routing protocols,
Delay tolerant networks, Performance analysis},
abstract = {The assessment of routing protocols for mobile wireless networks is
a difficult task, because of the networks' dynamic behavior and the absence of
benchmarks. However, some of these networks, such as intermittent wireless
sensors networks, periodic or cyclic networks, and some delay tolerant networks
(DTNs), have more predictable dynamics, as the temporal variations in the network
topology can be considered as deterministic, which may make them easier to study.
Recently, a graph theoretic model - the \em{evolving graphs} - was proposed to
help capture the dynamic behavior of such networks, in view of the construction
of least cost routing and other algorithms. The algorithms and insights obtained
through this model are theoretically very efficient and intriguing. However, there
is no study about the use of such theoretical results into practical situations.
Therefore, the objective of our work is to analyze the applicability of the
evolving graph theory in the construction of efficient routing protocols in
realistic scenarios. In this paper, we use the NS2 network simulator to first
implement an evolving graph based routing protocol, and then to use it as a
benchmark when comparing the four major ad hoc routing protocols (AODV, DSR, OLSR
and DSDV). Interestingly, our experiments show that evolving graphs have the
potential to be an effective and powerful tool in the development and analysis of
algorithms for dynamic networks, with predictable dynamics at least. In order to
make this model widely applicable, however, some practical issues still have to be
addressed and incorporated into the model, like adaptive algorithms. We also
discuss such issues in this paper, as a result of our experience.}
}
@article{dSKGFCF:CCPEC06,
author = {de Camargo, R. Y. and Goldchleger, A. and Kon, F. and Goldman, A.},
title = {Checkpointing BSP parallel applications on the InteGrade Grid middleware},
journal = {Concurrency and Computation: Practice and Experience},
volume = {18},
number = {},
pages = {567--579},
year = {2006},
http = {http://dx.doi.org/10.1002/cpe.966},
pdf = {},
keywords = {fault tolerance, checkpointing, BSP, Grid computing},
abstract = {InteGrade is a Grid middleware infrastructure that enables the use
of idle computing power from user workstations. One of its goals is to support
the execution of long-running parallel applications that present a considerable
amount of communication among application nodes. However, in an environment
composed of shared user workstations spread across many different LANs, machines
may fail, become inaccessible, or may switch from idle to busy very rapidly,
compromising the execution of the parallel application in some of its nodes. Thus,
to provide some mechanism for fault tolerance becomes a major requirement for such
a system. In this paper, we describe the support for checkpoint-based rollback
recovery of Bulk Synchronous Parallel applications running over the InteGrade
middleware. This mechanism consists of periodically saving application state to
permit the application to restart its execution from an intermediate execution
point in case of failure. A precompiler automatically instruments the source code
of a C/C++ application, adding code for saving and recovering application state. A
failure detector monitors the application execution. In case of failure, the
application is restarted from the last saved global checkpoint.}
}
@article{SBBGK:JBS06,
author = {Sato, Danilo and Bassi, Dairton and Bravo, Mariana and Goldman, Alfredo and Kon, Fabio},
title = {Experiences tracking agile projects: an empirical study},
journal = {Journal of the Brazilian Computer Society},
volume = {12},
number = {3},
pages = {45--64},
year = {2006},
http = {http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0104-65002006000400005&nrm=iso},
pdf = {},
keywords = {Agile Methods, Extreme Programming, Software Engineering, Tracking},
abstract = {In this article, we gather results from several projects we conducted
recently that use some kind of agile method. We analyze both academic and
governmental software development projects, some of them using agile methods
since the beginning and others in which agile methods were introduced afterwards.
Our main goals are to classify the different projects, and to analyze the collected
data and discover which metrics are best suited to support tracking an agile project.
We use both quantitative and qualitative methods, obtaining data from the source
code, from the code repository, and from the feedback received from surveys and
interviews held with the team members. We use various kinds of metrics such as lines
of code, number of tests, cyclomatic complexity, number of commits, as well as
combinations of these. In this article, we describe in detail the projects, the metrics,
the obtained results, and their analysis from our main goals standpoint, providing
guidelines for the use of metrics to track an agile software development project.}
}
@article{GGT:JPDC06,
author = {Goldman, Alfredo and G. Peters, Joseph and Trystram, Denis},
title = {Exchanging messages of different sizes},
journal = {Journal of Parallel and Distributed Computing},
volume = {66},
number = {1},
pages = {1--18},
year = {2006},
http = {http://dx.doi.org/10.1016/j.jpdc.2005.06.003},
pdf = {},
keywords = {Personalized communications, BSP model, Communication primitives},
abstract = {This paper deals with the study of the exchange of messages among a
set of processors linked through an interconnection network. We focus on general,
non-uniform versions of message exchange problems in asynchronous systems with a
linear cost model and messages of arbitrary sizes. We extend previous complexity
results to show that the general asynchronous problems are NP-complete. We present
several heuristics and determine which algorithms are best suited to several
parallel systems. We propose new algorithms that combine the advantages of some
of the heuristics. We conclude with experiments and simulations of the algorithms
and analyses of their performances.}
}
@article{GC:CCPE04,
author = {Goldman, Alfredo and Queiroz, Carlos},
title = {A model for parallel job scheduling on dynamical computer Grids},
journal = {Concurrency and Computation: Practice and Experience},
volume = {16},
number = {},
pages = {461--468},
year = {2004},
http = {http://dx.doi.org/10.1002/cpe.825},
pdf = {http://onlinelibrary.wiley.com/doi/10.1002/cpe.825/pdf},
keywords = {Grid computing, multi-site execution, scheduling of parallel applications},
abstract = {This work presents a model that allows the execution of parallel
applications in a Grid environment. Our main focus is on how to share the idle
cycles of clusters and computers to execute real parallel applications. We
present a new model which introduces the notions of locality and adaptability.
The locality is used for job allocation, and for job migration. The adaptability
provides a simple mechanism to allow clusters to join or leave a Grid. We also
propose the middleware architecture to implement the model, and provide some
simulation results to show the main characteristics of the model.}
}
@article{GKGFB:CCPE04,
author = {Goldchleger, Andrei and Kon, Fabio and Goldman, Alfredo and Finger, Marcelo and Bezerra, G. C.},
title = {InteGrade: object-oriented Grid middleware leveraging the idle computing power of desktop machines},
journal = {Concurrency and Computation: Practice and Experience},
volume = {16},
number = {},
pages = {449--459},
year = {2004},
http = {http://dx.doi.org/10.1002/cpe.824},
pdf = {http://onlinelibrary.wiley.com/doi/10.1002/cpe.824/pdf},
keywords = {Grid computing, multi-site execution, scheduling of parallel applications},
abstract = {Grid computing technology improves the computing experiences at
organizations by effectively integrating distributed computing resources.
However, just a small fraction of currently available Grid infrastructures
focuses on reutilization of existing commodity computing resources. This paper
introduces InteGrade, a novel object-oriented middleware Grid infrastructure
that focuses on leveraging the idle computing power of shared desktop machines.
Its features include support for a wide range of parallel applications and
mechanisms to assure that the owners of shared resources do not perceive any loss
in the quality of service. A prototype implementation is under construction and
the current version is available for download.}
}
@article{GKSY:JBCS04,
author = {Goldman, Alfredo and Kon, Fabio and Silva, Paulo J. S. and Yoder, Joseph W.},
title = {Being Extreme in the Classroom: experiences Teaching XP},
journal = {Journal of the Brazilian Computer Society},
volume = {10},
number = {},
pages = {5--21},
year = {2004},
http = {http://www.scielo.br/scielo.php?script=sci_arttext&pid=S0104-65002004000300002&nrm=iso},
pdf = {},
keywords = {},
abstract = {Agile Methods propose a new way of looking at software development
that questions many of the beliefs of conventional Software Engineering. Agile
methods such as Extreme Programming (XP) have been very effective in producing
highquality software in realworld projects with strict time constraints.
Nevertheless, most university courses and industrial training programs are still
based on oldstyle heavy-weight methods. This article, based on our experiences
teaching XP in academic and industrial environments, presents effective ways of
teaching students and professionals on how to develop high-quality software
following the principles of agile software development. We also discuss related
work in the area, describe realworld cases, and discuss open problems not yet
resolved.}
}
@article{GMT:TCS03,
author = {Goldman, Alfredo and Mounie, Gregory and Trystram, Denis},
title = {1-optimality of static BSP computations: scheduling independent chains as a case study},
journal = {Theoretical Computer Science},
volume = {290},
number = {3},
pages = {1331--1359},
year = {2003},
http = {http://dx.doi.org/10.1016/S0304-3975(02)00039-7},
pdf = {},
keywords = {Scheduling, Synchronization, Chains, BSP},
abstract = {The aim of this work is to study a specific scheduling problem
under the machine-independent model BSP. The problem of scheduling a set of
independent chains in this context is shown to be a difficult optimization
problem, but it can be easily approximated in practice. Efficient heuristics
taking into account communications are proposed and analyzed in this paper. We
particularly focus on the influence of synchronization between consecutive
supersteps. A family of algorithms is proposed with the best possible
load-balancing. Then, a strategy for determining a good compromise between the
two opposite criteria of minimizing the number of supersteps and a good balance
of the load is derived. Finally, a heuristic which considers the influence of
the latency is presented. Simulations of a large number of instances have been
carried out to complement the theoretical worst case analysis. They confirm the
very good behavior of the algorithms on the average cases.}
}
@article{GT:JPDC02,
author = {Goldman, Alfredo and Trystram, Denis},
title = {An efficient parallel algorithm for solving the Knapsack problem on hypercubes},
journal = {Journal of Parallel and Distributed Computing},
volume = {64},
number = {11},
pages = {1213--1222},
year = {2002},
http = {http://dx.doi.org/10.1016/j.jpdc.2002.10.001},
pdf = {},
keywords = {Hypercube, Knapsack problem, Irregular mesh, Scheduling},
abstract = {We present in this paper an efficient algorithm for solving the
integral Knapsack problem on hypercube. The main idea is to represent the
computations of the dynamic programming formulation as a precedence graph
(which has the structure of an irregular mesh). Then, we propose a time optimal
scheduling algorithm for computing the irregular meshes on hypercube.}
}
@article{GFS:JIN00,
author = {Goldman, Alfredo and Ferreira, A. and Song, S.W.},
title = {Broadcasting in bus interconnection networks},
journal = {Journal of Interconnection Networks},
volume = {1},
number = {2},
pages = {73--94},
year = {2000},
http = {http://dx.doi.org/10.1142/S0219265900000068},
pdf = {http://www.worldscinet.com/join/01/preserved-docs/0102/S0219265900000068.pdf},
keywords = {Massively parallel architectures, multiple bus systems, global communication,
communication models, hypergraphs and applications, broadcast},
abstract = {In most distributed memory MIMD multiprocessors, processors are
connected by a point-to-point interconnection network, usually modeled by a graph
where processors are nodes and communication links are edges. Since interprocessor
communication frequently constitutes serious bottlenecks, several architectures
were proposed that enhance point-to-point topologies with the help of multiple
bus systems so as to improve the communication efficiency. In this paper we study
parallel architectures where the communication means are constituted {\em solely} by buses.
These architectures can use the power of bus technologies, providing a way to
interconnect much more processors in a simple and efficient manner.
We present the {\em hyperpath, hypergrid, hyperring}, and {\em hypertorus} architectures,
which are the bus-based versions of the well used point-to-point interconnection
networks. Using (hyper) graph theoretic concepts to model inter-processor
communication in such networks, we give optimal algorithms for broadcasting a
message from one processor to all the others. For deriving high performance
communication patterns we developed a new tool called simplification. The idea
is to construct a graph, to be called representative graph, from the original
hyper-topology, in such a way that it will become easy to describe and perform
communication schemes to the former that will fit to the latter, because the
simplification concept also allows us to partially use some already known
communication algorithms for usual networks.}
}
@article{GFS:JPAA96,
author = {Goldman, Alfredo and Ferreira, A. and Song, S.W.},
title = {Gossiping in Bus Interconnection Networks},
journal = {Parallel Algorithms and Applications},
volume = {854},
number = {},
pages = {309--331},
year = {1996},
http = {http://dx.doi.org/10.1080/10637199608915559},
pdf = {},
keywords = {Massively parallel architectures, multiple bus systems, global communication, communication
models, hypergraphs and applications, gossiping, total exchange},
abstract = {Several architectures have been proposed to enhance point-to-point
architectures with the addition of multiple bus systems. In particular, we
consider an architecture for a massively parallel system where processors arc
connected solely by buses. These architectures can use the power of bus
technologies, providing a way to interconnect much more processors in a simple
and efficient manner. In this paper we model the so-called bus interconnection
networks (BINs) by a hypergraph. We consider the gossip operation in the various
proposed architectures. We focus on the hyperpath, the d-dimensional hypergrid,
the hyperring, and the d -dimensional hypertorus architectures and we give
corresponding algorithms for the gossiping operation. Some lower bounds are
also derived.}
}
@book{GKS06,
author = {Goldman, Alfredo and Kon, Fabio and Silva, Paulo J. S.},
title = {{I}ntrodu\c{c}\~{a}o \`{a} {C}i\^{e}ncia da {C}omputa\c{c}\~{a}o com {J}ava e {O}rienta\c{c}\~{a}o a {O}bjetos},
edition = {1st},
publisher = {IME/USP},
address = {S\~{a}o Paulo, SP, Brazil},
year = {2006},
isbn = {85-88697-10-6},
pdf = {http://ccsl.ime.usp.br/introCCJavaOO}
}
@inbook{KG08,
author = {Fabio Kon and Alfredo Goldman},
title = {{T}omasz {K}owaltowski e {K}arin {B}reitman (Org.) {A}tualiza\c{c}\~oes em {I}nform\'atica 2008},
chapter = {{G}rades {C}omputacionais: {C}onceitos Fundamentais e Casos Concretos},
publisher = {PUC-Rio},
address = {Rio de Janeiro},
year = {2008},
series = {SBC},
pages = {55--104}
}
@inbook{G03,
author = {Alfredo Goldman},
title = {SBC, Unisinos, UFSM e Unilasalle. (Org.) ERAD 2003 - 3 Escola Regional de Alto Desempenho},
chapter = {{M}odelos para {C}omputa\c{c}\~{a}o {P}aralela},
publisher = {SBC},
address = {Porto Alegre},
year = {2003},
series = {SBC},
pages = {35--66}
}
@inproceedings{GFMF:SBRC10,
author = {Goldman, Alfredo and Ferreira, C\'assia G. and Machado, Cesar G. and Floriano, Paulo},
title = {Jornadas mais r\'apidas e compromissos em DTNs},
booktitle = {Anais do 28 Simposio Brasileiro de Redes de Computadores},
pages = {},
year = {2010},
address = {Gramado, Brazil},
editor = {},
publisher = {},
note = {},
pdf = {pdf/DTN10.pdf},
abstract = {This article describes two algorithms to compute Fastest Journeys in
Delay and Disruption Tolerant Networks in which all connections can be predicted.
The first one corresponds to an algorithm already proposed, but never before
implemented. The second one uses a new idea, which can be extended to compute
other types of optimal journeys. Based on this new algorithm, we studied the
relationship between the arrival time, the hopcount and the transit time
of a journey, searching for optimal intermediate journeys that minimize two or
more parameters at the same time. We present in the paper several experiments
that show the importance of the proposed approach.}
}
@inproceedings{Goldman:ExtremeCom10,
author = {Goldman, Alfredo and Machado, Cesar G. and Floriano, Paulo},
title = {Optimal Journeys and Trade-offs on DTNs},
booktitle = {2nd Extreme Workshop on Communication},
pages = {},
year = {2010},
address = {Dharamsalam, India},
editor = {},
publisher = {},
note = {},
pdf = {pdf/GoldmanExtremeCom10.pdf},
abstract = {This article describes algorithms to compute optimal journeys in
predictable DTNs. We combine the algorithms to compute the shortest, fastest
and foremost journeys in order to provide intermediate optimal journeys which
can be used according to the environment characteristics. We also propose a
preliminary empirical study on the number of data mules needed to provide
connectivity in sparse scenarios on several environments. We present in the
article several experiments that show the importance of the proposed approach.}
}
@inproceedings{SG:ESELAW10,
author = {Santos, Viviane and Goldman, Alfredo},
title = {Aplicando T\'ecnicas de Grounded Theory e Retrospectiva \'Agil para Avaliar o Curso Laborat\'orio XP},
booktitle = {Proceedings of VII Experimental Software Engineering Latin American Workshop},
pages = {},
year = {2010},
address = {Goi\^ania, Goi\'as, Brazil},
editor = {},
publisher = {},
note = {},
pdf = {pdf/SGESELAW10.pdf},
abstract = {This paper presents an empirical study about learning eXtreme
Programming in an academic environment. The study employs two distinct
approaches to provide triangulation of the data: qualitative analysis with
grounded theory in a questionnaire and agile retrospective to investigate what
to improve in the course in the students point of view. From the results, specific
improvement actions were established for the next editions of the course.}
}
@inproceedings{AGS:COLIBRI09,
author = {Arantes, Luciana and Goldman, Alfredo and Sens, Pierre},
title = {Towards a distributed computing model that characterizes dynamics of mobile networks},
booktitle = {Anais do Col\'oquio em Inform\'atica: Brasil/INRIA, Coopera\c{c}\~oes, Avan\c{c}os e Desafios},
pages = {151--155},
year = {2009},
address = {Bento Gol\c{c}alves - RS, Brazil},
editor = {},
publisher = {},
pdf = {pdf/colibri09.pdf},
abstract = {Our main goal in this proposal is to present the research
possibilities opened by two previous cooperations among groups from France and
Brazil in dynamic systems.
Basically, we intend to add up the expertise of the French group on distributed
systems with the skills of the Brazilian group on the practical use of theoretical
tools in order to create a new distributed model for mobile networks (MANET).
Despite the fact that both groups have conducted their researches independently,
we believe that to join efforts to define such a model would be very promising
and would open an interesting field of research.}
}
@inproceedings{DGH:VIIWGCA09,
author = {Dias, Rodrigo A. and Goldman, Alfredo and Hirata, Roberto},
title = {Middle-R - A User Level Middleware for Statistical Computing},
booktitle = {Anais do VII Workshop on Grid Computing and Applications},
pages = {},
year = {2009},
address = {Pernambuco, Brazil},
editor = {},
publisher = {},
note = {},
pdf = {http://www.integrade.org.br/files/middleR.pdf},
abstract = {In this work we present middle-R, a user-level middleware for
statistical computing. It has been developed to distribute R (a language and
environment for statistics) in commodity computers running Microsoft Windows.
The solution is simple because it uses Alchemi, a grid middleware developed using
Microsoft .NET technology in the University of Melbourne. The implemented solution
uses Alchemi as a low-level middleware and makes it possible to execute R scripts
in a grid environment. The solution has been successfully implemented and tested
in two different environments: the didactic laboratories of a college and of a
high school. The main application reported in this paper is a combinatorial task
for finding molecular markers of a few genes to classify correctly samples of acute
lymphoblastic leukemia against acute myeloid leukemia.}
}
@inproceedings{PKG:MGSACM09,
author = {Pinheiro, Vinicius and Kon, Fabio and Goldman, Alfredo},
title = {Towards an adaptive middleware for opportunistic environment: A Mobile Agent Approach},
booktitle = {MGC '09: Proceedings of the 7th International Workshop on Middleware for Grids, Clouds and e-Science},
pages = {1--6},
year = {2009},
address = {Urbana Champaign, Illinois},
editor = {},
publisher = {ACM},
note = {},
http = {http://doi.acm.org/10.1145/1657120.1657126},
abstract = {The mobile agent paradigm has emerged as a promising alternative to
overcome the construction challenges of opportunistic grid environments. This
model can be used to implement mechanisms that enable application execution
progress even in the presence of failures, such as those presented by the MAG
middleware (Mobile Agents for Grids). MAG includes retrying, replication, and
checkpointing as fault-tolerance techniques; they operate independently from
each other and are not capable of detecting changes on resource availability.
In this paper, we describe a MAG extension that is capable of migrating agents
when nodes fail, that optimizes application progress by keeping only the most
advanced checkpoint, and that migrates slow replicas.}
}
@inproceedings{BFG:SACACM08,
author = {Broinizi, Marcos E. B. and Ferreira, Jo\~{a}o Eduardo and Goldman, Alfredo},
title = {Using annotations in the naked objects framework to explore data requirements},
booktitle = {SAC '08: Proceedings of the 2008 ACM symposium on Applied computing},
pages = {630--637},
year = {2008},
address = {Fortaleza, Ceara, Brazil},
editor = {},
publisher = {ACM},
note = {},
http = {http://doi.acm.org/10.1145/1363686.1363838},
keywords = {Agile methods of software development, conceptual data design, data abstractions,
requirements engineering, requirements specification},
abstract = {The creation of conceptual data design that appropriately represents
specific application domain is one of the main challenges in requirements
engineering. An initiative to help designers is the Naked Objects framework,
where it is possible to interact with conceptual model in a limited way. The
interactions are restricted to entity creations and single object-relations. We
created an extension of the Naked Objects framework using annotations to allow
manipulation of higher level abstractions as specialization and object-relationship.
These abstractions allow better interactions between the domain specialist and
designers. The use of our approach to explore and validate data requirements has
several benefits: 1) It reduces conceptual specification problems (like poorly
data requirements identification); 2) It narrows the distance among domain and
design specialists; 3) It allows the simultaneous exploration of the conceptual
data design and the system requirements.}
}
@inproceedings{STTGM:WSL08,
author = {Santos, M\'{a}rcio V. and Takinami, Alexandre and Thies, Thiago and Goldman, Alfredo and Manssur, Carlos Eduardo},
title = {Tail - A Java Technical Analysis Library},
booktitle = {Workshop de Software Livre},
year = {2008},
pages = {},
editor = {},
publisher = {},
address = {Porto Alegre, Brazil},
note = {},
pdf = {pdf/wsl2008.pdf},
abstract = {Technical Analysis studies forecasting future price trends with the
objective to find out the best moment to buy and sell shares. The Tail's target is
to develop a Java Open-Source library that abstracts the basic components of
Technical Analysis, supplying tools for creation, manipulation and evaluation
of strategies to buy and sell. The objective of this paper is to present the Tail
library, its architecture and results obtained. The library is validaded with
several post-mortem experiments.}
}
@inproceedings{PGS:WGCA08,
author = {Pinheiro, Vinicius and Goldman, Alfredo and da Silva e Silva, Francisco Jos\'{e}},
title = {Agentes M\'oveis: Uma Abordagem para a Execu\c{c}\~ao de Aplica\c{c}\~oes Longas em Ambientes Oportunistas},
booktitle = {VI Workshop on Grid Computing and Application},
pages = {109--120},
year = {2008},
month = {May},
address = {Rio de Janeiro, RJ, Brazil},
editor = {},
publisher = {},
note = {},
pdf = {http://www.integrade.org.br/files/vinicius-wcga-sbrc-2008.pdf},
slides = {http://www.integrade.org.br/files/vinicius-wcga08-slides.pdf},
abstract = {The mobile agent paradigm has emerged as a promising alternative to
overcome the construction challenges of opportunistic Grid environments. MAG
(Mobile Agents for Grid Computing Environment) explores this powerful paradigm
by dynamically loading grid applications into mobile agents. These MAG agents
can be dynamically reallocated to Grid nodes through a transparent migration
mechanism as a way to provide load balancing and support for non-dedicated nodes.
MAG also includes retrying, replication and checkpoint as fault-tolerance
techniques. These mechanisms can be applied in a flexible manner, and be combined
in order to meet different scenarios of resource availability. In this paper we
describe the MAG architecture and what it can do in a volunteer computing
environment. We also present a description of these mechanisms and a performance
evaluation in a real world environment.}
}
@inproceedings{GYanik:ISPDC08,
author = {Goldman, Alfredo and Ngoko, Yanik},
title = {A MILP Approach to Schedule Parallel Independent Tasks},
booktitle = {ISPDC '08: International Symposium on Parallel and Distributed Computing},
pages = {115--122},
year = {2008},
address = {Crac\'ovia},
editor = {},
publisher = {IEEE Computer Society},
note = {},
html = {http://dx.doi.org/10.1109/ISPDC.2008.59},
kwywords = {Scheduling, Independent Tasks, Mixed Integer Linear Programming, parallel independent task scheduling,
integer programming, linear programming, minimisation, parallel algorithms, processor scheduling},
abstract = {We propose a new Mixed Integer Linear Programmingapproach to solve
the classical problem of scheduling independent parallel tasks without
preemption. We proposea formulation where the goal is to minimize the makespan.
Then we show the flexibility of this approach by extendingthe result to the
contiguous case. We validate this approachwith some experiments on the execution
times and comparingthe optimal results with the solutions provided by
list algorithms.}
}
@inproceedings{STGF:CSEIEEE08,
author = {Santos, M\'{a}rcio V. and Takinami, Alexandre and Goldman, Alfredo and Fernandes, Cecilia},
title = {Tail - A Java Technical Analysis Library},
booktitle = {CSE '08: Proceedings of the 2008 11th IEEE International Conference on Computational Science and Engineering},
year = {2008},
pages = {463--470},
editor = {},
publisher = {IEEE Computer Society},
address = {Washington, DC, USA},
note = {},
http = {http://dx.doi.org/10.1109/CSE.2008.42},
kwywords = {Java open-source library, Java technical analysis library, Tail library, chart analysis,
Java, economics, public domain software, stock markets},
abstract = {Technical Analysis explores forecasting of future price trends with
the objective of identifying the best moment to buy and sell shares. Tail
consists of a Java Open-Source library that abstracts the basic components of
Technical Analysis, supplying tools for creation, manipulation and evaluation
of techniques to buy and sell shares. We developed Tail's structure in a extensible
and adaptable way, allowing its use as an environment for simulation and study
of new techniques of chart analysis. This paper presents the Tail library, its
architecture and results obtained with its use. We validate the library through
an experimental section with several post-mortem experiments.}
}
@inproceedings{CG:ESELAW08,
author = {Corbucci, Hugo and Goldman, Alfredo},
title = {Open Source and Agile: Two worlds that should have a closer interaction},
booktitle = {ESELAW - V Experimental Software Engineering Latin American Workshop},
year = {2008},
pages = {},
address = {Salvador, Brazil},
editor = {},
publisher = {},
note = {},
http = {pdf/CorbucciGoldman08.pdf},
abstract = {Agile methods and open source software communities share similar
cultures with different approaches to overcome problems. Although several
professionals are involved in both worlds, neither agile methodologies are as
strong as they could be in open source communities nor those communities provide
strong contributions to agile methods. This work identifies and exposes the
obstacles that separate those communities in order to extract the best of them
and improve both sides with suggestions of tools and development processes.}
}
@inproceedings{CGdSEuroPar07,
author = {Cordeiro, Daniel and Goldman, Alfredo and da Silva, Dilma},
title = {Load Balancing on an Interactive Multiplayer Game Server},
booktitle = {Euro-Par 2007 Parallel Processing},
year = {2007},
pages = {184-194},
volume = {4641},
publisher = {Springer},
editor = {Kermarrec, Anne-Marie and Boug\'e, Luc and Priol, Thierry},
series = {Lecture Notes in Computer Science},
http = {http://dx.doi.org/10.1007/978-3-540-74466-5_21},
abstract = {In this work, we investigate the impact of issues related to
performance, parallelization, and scalability of interactive, multiplayer
games. Particularly, we study and extend the game QuakeWorld, made publicly
available by id Software under GPL license. We have created a new
parallelization model for Quake's distributed simulation and implemented
this model in QuakeWorld server. We implemented the model adapting the
QuakeWorld server in order to allow a better management of the generated
workload. We present in this paper our experimental results on SMP
computers.}
}
@inproceedings{SGK:ICEPAPSEXP07,
author = {Sato, Danilo and Goldman, Alfredo and Kon, Fabio},
title = {Tracking the Evolution of Object Oriented Quality Metrics},
booktitle = {8th International Conference on Extreme Programming and Agile Processes in Sofware Engineering XP'2007},
year = {2007},
pages = {84-92},
address = {Como, Italy},
editor = {},
publisher = {},
note = {},
pdf = {http://ccsl.ime.usp.br/agilcoop/files/Tracking%20the%20Evolution%20of%20Object%20Oriented%20Quality%20Metrics.pdf},
abstract = {The automated collection of source code metrics can help agile teams
to understand the software they are producing, allowing them to adapt their
daily practices towards an environment of continuous improvement. This paper
describes the evolution of some object-oriented metrics in several agile projects
we conducted recently in both academic and governmental environments. We analyze
seven different projects, some where agile methods were used since the beginning
and others where some agile practices were introduced later. We analyze and
compare the evolution of such metrics in these projects and evaluate how the
different project context factors have impacted the source code.}
}
@inproceedings{MGF:SBRC07,
author = {Monteiro, Julian and Goldman, Alfredo and Ferreira, Afonso},
title = {Using Evolving Graphs Foremost Journeys to Evaluate Ad-Hoc Routing Protocols},
booktitle = {25th Brazilian Symposium on Computer Networks (SBRC 07)},
year = {2007},
pages = {17--30},
address = {Bel\'em, Brazil},
editor = {},
publisher = {},
note = {},
abstract = {The performance evaluation of routing protocols for ad hoc networks
is a difficult task. However, a graph theoretic model - the evolving graphs -
was recently proposed to help capture the behavior of dynamic networks with
fixed-schedule behavior. Our recent experiments showed that evolving graphs
have all the potentials to be an effective and powerful tool in the development
of routing protocols for dynamic networks. In this paper, we design a new
congestion avoidance mechanism and a modified end-to-end delay metric in order
to improve the evolving graph based routing protocol proposed previously. We
use the NS2 network simulator to compare this new version to the three protocols
provided by NS2, namely AODV, DSR and DSDV, and to OLSR, which is included in
the experiments for the first time.}
}
@inproceedings{MGF:SNCA07,
author = {Ferreira, Afonso and Goldman, Alfredo and Monteiro, Julian},
title = {On the Evaluation of Shortest Journeys in Dynamic Networks},
booktitle = {Intl. Symposium on Networking Computing and Applications ({NCA}'07)},
year = {2007},
pages = {},
address = {Cambridge},
editor = {},
publisher = {},
note = {},
abstract = {The assessment of routing protocols for wireless networks is a
difficult task, because of the networks' highly dynamic behavior and the
absence of benchmarks. However, some of these networks, such as intermittent
wireless sensors networks, periodic or cyclic networks, and low earth orbit
(LEO) satellites systems, have more predictable dynamics, as the temporal
variations in the network topology are somehow deterministic, which may
make them easier to study. The graph theoretic model - the evolving graphs -
was proposed to help capture the dynamic behavior of these networks, in view
of the construction of least cost routing and other algorithms.
Our recent experiments showed that evolving graphs have all the potentials
to be an effective and powerful tool in the development of routing protocols
for dynamic networks. In this paper, we evaluated the shortest journey
evolving graph algorithm when used in a routing protocol for MANETs. We use
the NS2 network simulator to compare this first implementation to the four
well known protocols, namely AODV, DSR, DSDV, and OLSR. In this paper we
present simulation results on the energy consumption of the nodes. We also
included other EG protocol, namely EG$_{Foremost}$ , in the experiments.}
}
@inproceedings{SBG:WDRA07,
author = {Sato, Danilo and Bassi, Dairton and Goldman, Alfredo},
title = {Extending Extreme Programming With Practices From Other Agile Methodologies},
booktitle = {1st Workshop on Rapid Application Development (WDRA'2007) in the Brazilian Symposium on Software Quality},
year = {2007},
pages = {},
address = {Porto de Galinhas, Brazil},
editor = {},
publisher = {},
note = {},
slides = {http://ccsl.ime.usp.br/agilcoop/files/WDRA07ExtendingXP.pdf},
pdf = {http://ccsl.ime.usp.br/agilcoop/files/Extending%20Extreme%20Programming%20with%20Practices%20from%20Other%20Methodologies.pdf},
abstract = {In the second edition of Extreme Programming Explained, Kent Beck
breaks the original twelve practices in thirteen primary practices and eleven
corollary practices. He also clearly outlines the principles of the methodology
that should serve as guidelines when translating values into practices. Based on
these principles and on our experience, we present five practices that we created,
adapted, or brought from different agile methodologies and that we have been
using on several projects: Daily Stand-up Meetings, Retrospectives, Refactoring
Threshold, Story/Task Board, and Personas. For each practice we explain its use
and we present the associated principles and values.}
}
@inproceedings{FGK:WDRA07,
author = {Freire, Alexandre and Goldman, Alfredo and Kon, F\'abio},
title = {The ``Bootstrap'' and ``Split Personality'' Antipractices - eXPeriences Teaching eXtreme Programming},
booktitle = {1st Workshop on Rapid Application Development (WDRA'2007) in the Brazilian Symposium on Software Quality},
year = {2007},
pages = {},
address = {Porto de Galinhas, Brazil},
editor = {},
publisher = {},
note = {},
slides = {http://ccsl.ime.usp.br/agilcoop/files/antipraticasWrda.pdf},
pdf = {http://www.ime.usp.br/~kon/papers/Freire-wrda07.pdf},
abstract = {This article provides insight into two simple and common problems
when teaching XP: the ``Bootstrap'' and ``Split Personality'' antipractices.
Bootstrap describes how teams have difficulties starting a project with little or
no code base. Split Personality describes difficulties experienced when one
assumes both the Coach and Customer roles. We present these organizational
antipatterns as antipractices we have identified while teaching XP in different
contexts. We discuss simple solutions to the antipatterns based on reflections
from these experiences and describe concrete situations where they were effective.}
}
@inproceedings{FGK:WCGA07,
author = {Guerra, E. and Goldman, Alfredo},
title = {InGriDE: um ambiente de desenvolvimento para computa\c{c}\~ao em grade baseado no GAT (Grid Application Toolkit)},
booktitle = {V Workshop de Computa\c{c}\~ao em Grade e Aplica\c{c}\~oes em conjunto com o SBRC 2007},
year = {2007},
pages = {},
address = {Bel\'em, Brazil},
editor = {},
publisher = {},
note = {},
slides = {http://wcga07.lncc.br/docs/29378.pdf},
abstract = {The establishment of Grid Computing resulted in the deployment of
several infrastructures which provide computational resources for solving
complex problems. However, developing applications over this heterogeneous and
distributed infrastructure is still a complex and error prone process. This paper
introduces InGriDE, an integrated and extensible development environment for
Grid Computing which aims to reduce this problem. InGriDE unifies tools and
provide interaction with different middleware systems through the Grid
Application Toolkit (GAT) programming interface. In this paper we present the main
contributions of InGriDE for Grid Computing.}
}
@inproceedings{MGF:WiMobIEEE06,
author = {Monteiro, J. and Goldman, A. and Ferreira, A.},
title = {Performance Evaluation of Dynamic Networks using an Evolving Graph Combinatorial Model},
booktitle = {2nd {IEEE} International Conference on Wireless and Mobile Computing, Networking and Communications WiMob'06},
year = {2006},
pages = {173--180},
address = {Montreal},
editor = {},
publisher = {IEEE Computer Society},
note = {},
http = {http://dx.doi.org/10.1109/WIMOB.2006.1696378},
keywords = {NS2 network simulator, combinatorial model, dynamic behavior, evolving graph theory,
graph theoretic model, performance evaluation, routing protocol, stochastic prediction,
wireless network, graph theory, performance evaluation, prediction theory, radio networks,
routing protocols, stochastic processes},
abstract = {The highly dynamic behavior of wireless networks make them very
difficult to evaluate, e.g. as far as the performance of routing algorithms
is concerned. However, some of these networks, such as intermittent wireless
sensors networks, periodic or cyclic networks, and low Earth orbit (LEO)
satellites systems have more predictable dynamics, as the temporal variations
in the network topology are somehow deterministic. Recently, a graph theoretic
model-the evolving graphs-was proposed to help capture the dynamic behavior of
these networks, in view of the construction of least cost routing and other
algorithms. The algorithms and insights obtained through this model are
theoretically very efficient and intriguing. However, there is no study on the
uses of these theoretical results into practical situations. Therefore, the
objective of this work is to analyze the applicability of the evolving graph
theory in the construction of efficient routing protocols in realistic scenarios.
In this paper, we used the NS2 network simulator to first implement an evolving
graph based routing protocol, and then to evaluate such protocol compared to
three major ad-hoc protocols (DSDV, DSR, AODV). Interestingly, our experiments
showed that evolving graphs have all the potentials to be an effective and
powerful tool in the development of algorithms for dynamic networks, with
predictable dynamics at least. In order to make this model widely applicable,
however, some practical issues still have to be addressed and incorporated into
the model, like stochastically predictable behavior. We also discuss such issues
in this paper, as a result of our experience.}
}
@inproceedings{VG:WSCAD06,
author = {Vinagreiro, Marcelo and Goldman, Alfredo},
title = {Um sistema distribu\'ido para busca de caminhos em grafos din\^amicos},
booktitle = {WSCAD VII Workshop em Sistemas Computacionais de Alto Desempenho},
year = {2006},
pages = {},
address = {Ouro Preto},
editor = {},
publisher = {Anais do VII WSCAD},
note = {},
pdf = {pdf/wscad06.pdf},
abstract = {Este trabalho descreve um novo modelo para c\'alculo
concorrente de caminhos em grafos din\^amicos os quais podem estar
particionados em um conjunto de servidores interconectados. Aspectos
din\^amicos em c\'alculos de caminhos t\^em sido bem explorados em
trabalhos anteriores, neste trabalho, consideramos tamb\'em aspectos de
distribui\c{c}\~ao. O arcabouco proposto pode ser usado com algoritmos
de c\'alculo de caminhos din\^amicos ou est\'aticos.
O modelo pode ser usado em sistemas simulando o estado
de uma rede ou o monitormento das condicoes de tr\^ansito
de uma cidade. O artigo tamb\'em apresenta alguns detalhes
de implementa\c{c}\~ao bem como resultados de testes.}
}
@inproceedings{dutot:WJSPS05,
author = {Pierre-Fran{\c c}ois Dutot and Marco A. S. Netto and Alfredo Goldman and Fabio Kon},
title = {Scheduling moldable BSP tasks},
booktitle = {Proceedings of the 11th Workshop on Job Scheduling Strategies for Parallel Processing},
year = {2005},
volume = {3834},
pages = {157-172},
address = {Boston},
publisher = {Workshop on Job Scheduling Strategies for Parallel Processing - LNCS},
abstract = {Our main goal in this paper is to study the scheduling of
parallel BSP tasks on clusters of computers. We focus our attention on
special characteristics of BSP tasks, which can use fewer processors than
the original required, but with a particular cost model. We discuss the
problem of scheduling a batch of BSP tasks on a fixed number of computers.
The objective is to minimize the completion time of the last task
(makespan). We show that the problem is difficult and present
approximation algorithms and heuristics. We finish the paper presenting the
results of extensive simulations under different workloads.}
}
@inproceedings{camargo:SBAC05,
author = {Raphael Y. De Camargo and Fabio Kon and Alfredo Goldman},
title = {Portable checkpointing and communication for {BSP} applications on dynamic heterogeneous {Grid} environments},
booktitle = {SBAC-PAD'05: The 17th International Symposium on Computer Architecture and High Performance Computing},
year = {2005},
volume = {1},
pages = {226--233},
address = {Rio de Janeiro},
publisher = {Workshop on Job Scheduling Strategies for Parallel Processing - LNCS},
http = {http://dx.doi.org/10.1109/CAHPC.2005.33},
abstract = {Executing long-running parallel applications in Opportunistic Grid
environments composed of heterogeneous, shared user workstations, is a daunting
task. Machines may fail, become unaccessible, or may switch from idle to busy
unexpectedly, compromising the execution of applications. A mechanism for
fault-tolerance that supports these heterogeneous architectures is an important
requirement for such a system. In this paper, we describe the support for
fault-tolerant execution of BSP parallel applications on heterogeneous, shared
workstations. A precompiler instruments application source code to save state
periodically into checkpoint files. In case of failure, it is possible to
recover the stored state from these files. Generated checkpoints are portable
and can be recovered in a machine of different architecture, with data
representation conversions being performed at recovery time. The precompiler
also modifies BSP parallel applications to allow execution on a Grid composed
of machines with different architectures. We implemented a monitoring and
recovering infrastructure in the InteGrade Grid middleware. Experimental results
evaluate the overhead incurred and the viability of using this approach in a Grid
environment.}
}
@inproceedings{GB:MATA04,
author = {Goldman, Alfredo and Barbosa, Rodrigo M.},
title = {MobiGrid: Framework for Mobile Agents on Computer {Grid} Environments},
booktitle = {MATA 2004, First International Workshop on Mobility Aware Technologies and Applications},
year = {2004},
volume = {},
pages = {147--157},
address = {Florian\'opolis},
publisher = {Springer-Verlag},
pdf = {pdf/mata2004.pdf},
abstract = {This project focuses on the implementation of a framework for mobile
agents support within a grid environment project, namely InteGrade. Our goal is
to present a framework where time consuming sequential tasks can be executed
using mainly the idle cycles of a network of personal workstations. The mobile
agents may be used to encapsulate long processing applications (tasks). These
agents can migrate whenever the local machine is requested by its user, since
they are provided with automatic migration capabilities. Our framework also
provides to the user a manager that keeps track of the agents submitted by him.}
}
@inproceedings{FGFAK:WSL04,
author = {Freire, Alexandre and Goldman, Alfredo and Ferreira, Carlos Eduardo and Asmussen, Christian and Kon, F\'abio},
title = {Mico - university schedule planner},
booktitle = {Anais do 5o Workshop sobre Software Livre},
year = {2004},
volume = {},
pages = {147--150},
address = {Porto Alegre, Brazil},
publisher = {Anais do WSL'2004},
pdf = {pdf/wsl04.pdf},
abstract = {This paper describes the development of Mico, the XPUSP
University Schedule Planner. It is a system that manages the creation
of a schedule for the courses of the Computer Science department and
the allocation of professors to teach these courses based on
preferences gathered from professors and students. It has been
developed using free software and it is itself free software, available
under the GNU GPL. We will give a short description of the problem we
want to solve and how the system works, then we will discuss the free
software frameworks and tools used in the development and our interaction
with the free software development community.}
}
@inproceedings{camargo:MGC04,
author = {de Camargo, Raphael Y. and Goldchleger, Andrei and Kon, Fabio and Goldman, Alfredo},
title = {Checkpointing-based rollback recovery for parallel applications on the InteGrade grid middleware},
booktitle = {MGC '04: Proceedings of the 2nd workshop on Middleware for grid computing},
year = {2004},
volume = {},
pages = {35--40},
address = {Vancouver, Canada},
publisher = {ACM},
http = {http://doi.acm.org/10.1145/1028493.1028499},
keywords = {Fault-tolerance, Checkpointing, BSP, Grid Computing},
abstract = {InteGrade is a grid middleware infrastructure that enables
the use of idle computing power from user workstations.
One of its goals is to support the execution of long-running
parallel applications that present a considerable amount of
communication among application nodes. However, in an
environment composed of shared user workstations spread
across many different LANs, machines may fail, become unaccessible,
or may switch from idle to busy very rapidly, compromising the
execution of the parallel application in some of its nodes. Thus,
to provide some mechanism for fault-tolerance becomes a major
requirement for such a system.
In this paper, we describe the support for checkpoint-based
rollback recovery of parallel BSP applications running over the
InteGrade middleware. This mechanism consists of periodically
saving application state to permit to restart its execution from
an intermediate execution point in case of failure. A precompiler
automatically instruments the source-code of a C/C++ application,
adding code for saving and recovering application state. A failure
detector monitors the application execution. In case of failure, the
application is restarted from the last saved global checkpoint.}
}
@inproceedings{GP:WCSF03,
author = {Goldman, Alfredo and Pinho, Leonardo},
title = {Sistemas de localiza\c{c}\~ao din\^amica de servi\c{c}os em ambientes de computa\c{c}\~ao m\'ovel},
booktitle = {WCSF2003 - Workshop de Computa\c{c}\~ao M\'ovel e Sem Fio},
year = {2003},
volume = {},
pages = {},
address = {S\~ao Louren\c{c}o, MG, Brazil},
publisher = {Workshop de Computa\c{c}\~ao M\'ovel e Sem Fio, 2003},
abstract = {Um dos desafios atuais, com o aumento do n\'umero de servi\c{c}os
em uma rede, \'e a localiza\c{c}\~ao din\^amica dos mesmos. V\'arias tecnologias
de localiza\c{c}\~ao de servi\c{c}os foram desenvolvidas para simplificar o uso
dos mesmos, permitindo que eles sejam encontrados, configurados e usados com um
m\'inimo de esfor\c{c}o. Entretanto, n\~ao existe nenhum sistema que selecione
o servidor mais conveniente ao cliente, como o mais pr\'oximo a este.
Apresentamos uma solu\c{c}\~ao para estender os sistemas existentes, integrando-os
com sistemas de localiza\c{c}\~ao f\'isica de unidades m\'oveis, a fim de localizar
o servi\c{c}o mais pr\'oximo ao cliente.}
}
@inproceedings{TGB:ICPPIEEE03,
author = {Martha Torres and Alfredo Goldman and Junior Barrera},
title = {A Parallel Algorithm for Enumerating Combinations},
booktitle = {International Conference on Parallel Processing},
year = {2003},
volume = {1},
pages = {518-526},
address = {Taiwan},
publisher = {IEEE Computer Society},
http = {http://www.computer.org/portal/web/csdl/doi/10.1109/ICPP.2003.1240626},
keywords = {combinations enumeration, dynamic algorithm, dynamic scheduling, heterogeneous parallel platforms,
load balance, parallel algorithm, static scheduling, computational complexity, dynamic scheduling,
parallel algorithms, processor scheduling, resource allocation},
abstract = {In this paper we propose an efficient parallel algorithm with simple
static and dynamic scheduling for generating combinations. It can use any number
of processors $(NP \leq n - m + 1)$ in order to generate the set of all
combinations of $C(n, m)$. The main characteristic of this algorithm is to require
no integer larger than $n$ during the whole computation. The performance results
show that even without a perfect load balance, this algorithm has very good
performance, mainly when $n$ is large. Besides, the dynamic algorithm presents a
good performance on heterogeneous parallel platforms.}
}
@inproceedings{GKGF:IFIPConf03,
author = {Andrei Goldchleger and Fabio Kon and Alfredo Goldman and Marcelo Finger},
title = {Integrade: Object-Oriented Grid Middleware Leveraging Idle Computing Power of Desktop Machines},
booktitle = {Third IFIP Conference on E-Commerce, E-Business and E-Goverment},
year = {2003},
volume = {},
pages = {610--616},
address = {Guaruj\'a, Brazil},
publisher = {Proceedings of the Third IFIP Conference on E-Commerce, E-Business and E-Goverment},
http = {},
keywords = {},
abstract = {}
}
@inproceedings{GKF:XP02,
author = {Alfredo Goldman and Fabio Kon and Carlos Ferreira},
title = {Programa\c{c}\~ao {eXtrema}: uma experi\^encia did\'atica},
booktitle = {Curso de Qualidade 2002},
year = {2002},
volume = {1},
pages = {63--72},
address = {Florian\'opolis},
publisher = {Anais do VI Curso de Qualidade SBC 2002},
keywords = {},
abstract = {}
}
@inproceedings{AG:WSCAD02,
author = {Arruda, Fl\'avio and Goldman, Alfredo},
title = {Elimina\c{c}\~ao Paralela de Termos Dominantes no Problema da Mochila},
booktitle = {Workshop de Sistemas Computacionais de Alto Desempenho},
year = {2002},
volume = {},
pages = {89-94},
address = {Vit\'oria, ES, Brazil},
publisher = {Sociedade Brasileira da Computa\c{c}\~ao},
abstract = {Um dos problemas mais conhecidos em otimiza\c{c}\~ao combinat\'oria
\'e o problema da mochila ilimitado. Devido a sua import\^ancia diversos autores
buscaram formas eficientes de resolv\^e-lo. Por um lado, diversos estudos da
paraleliza\c{c}\~ao deste problema foram feitos. Por outro lado, v\'arias
t\'ecnicas de elimina\c{c}\~ao de objetos tamb\'em foram encontradas. Neste
trabalho n\'os unimos as duas possibilidades apresentando algoritmos paralelos
para a elimina\c{c}\~ao de objetos. Para valida\c{c}\~ao dos algoritmos, os
mesmos foram implementados em Java e executados em um cluster de computadores.}
}
@inproceedings{AG:BSGAC01,
author = {Goldman, Alfredo and Rapine, C.},
title = {Scheduling with Duplication on m Processors with Small Communication Delays},
booktitle = {Brazilian Symposium on Graphs Algorithms and Combinatorics},
year = {2001},
volume = {7},
pages = {1-4},
address = {Fortaleza, Brazil},
publisher = {Electronic Notes in Discrete Mathematics},
keywords = {Scheduling, communication delays, performance guarantee},
abstract = {We consider the problem of scheduling a directed acyclic graph on
a limited number of processors in presence of communication delays
($P | prec, c_{i,j} | C_{max}$). Under the small communication time assumption,
meaning that the communication delays are smaller than the computation times of
the tasks, we propose a new list scheduling algorithm. This algorithm takes
advantage of the duplication to reduce the impact of the communication on the
schedule makespan. We establish for this algorithm a worst case performance
guarantee of 2 compared to an optimal solution.}
}
@inproceedings{GS:WCsFCM01,
author = {A. Goldman and A. Santiago},
title = {Pol\'iticas de hand-off com balanceamento de carga para computa\c{c}\~ao m\'ovel},
booktitle = {Workshop de Comunica\c{c}\~ao sem Fio e Computa\c{c}\~ao M\'ovel},
year = {2001},
volume = {},
pages = {},
address = {Recife, Brazil},
publisher = {Anais do 3o. Workshop de Comunica\c{c}\~ao sem Fio e Computa\c{c}\~ao M\'ovel},
abstract = {Usually the hand-off is done when the mobile units move from
one base station to other. As there exist regions where more than one base
station is available. We propose a new scheme where the hand-off can be
initiated by the base stations. The goal of this scheme is to balance the
load among the base stations.}
}
@inproceedings{GM:REMPAR98,
author = {A. Goldman and G. Mounie},
title = {Near optimal scheduling of UET-task chains on $m$ BSP processors},
booktitle = {Rencontres Francophones du Paralelisme},
year = {1998},
volume = {},
pages = {239-242 (in French)},
address = {Bordeaux},
publisher = {REMPAR'98, 1998},
ps = {pdf/rempar98.ps},
keywords = {Ordonnancement, cha\^ines, BSP},
abstract = {Nous pr\'esentons tout d'abord le mod\`ele BSP et le probl\`eme de
l'ordonnancement de cha\^ines ind\'ependantes. Puis nous nous attacherons \`a
l'\'etude de la complexit\'e do probl\`eme et \`a la pr\'esentation d'un
algorithme approch\'e.}
}
@inproceedings{GPT:Irregular98,
author = {Alfredo Goldman and Joseph G. Peters and Denis Trystram},
title = {Exchange of messages of different sizes},
booktitle = {Irregular, 1998},
volume = {1457},
number = {},
pages = {194--205},
year = {1998},
address = {Berkeley},
publisher = {Springer Verlag},
ps = {pdf/irregular98-final.ps},
abstract = {In this paper, we study the exchange of messages among a
set of processors linked through an interconnection network. We focus on
general, non-uniform versions of all-to-all (or complete) exchange,
problems in asynchronous systems with a linear cost model and messages
of arbitrary sizes. We extend previous complexity results to show that
the general asynchronous problems are {em NP}-complete. We present several
approximation algorithms and determine which heuristics are best suited
to several parallel system. We conclude with experimental results
that show that our algorithms outperform the native all-to-all exchange
algorithm on an IBM SP2 when the number of processors is odd.}
}
@inproceedings{GT:parelec98,
author = {Alfredo Goldman and Denis Trystram},
title = {Algorithms for the message exchange problem},
booktitle = {Parelec, 1998},
volume = {},
number = {},
pages = {153--161},
year = {1998},
address = {Byalistok},
publisher = {},
ps = {pdf/parelec98-final.ps},
keywords = {Personalized communication, routing {h-}relations, BSP model},
abstract = {In a distributed memory computer system, the tasks of a parallel
program spread among the processors have to communicate in order to exchange
data. The communication phase can be seen as a {\em h-relation} whose
efficient implementation allow a high performance execution of a large class
of algorithms. We apply some well known linear algebra algorithms to find
communication patterns, that have a very good performance in practice.}
}
@inproceedings{GT:HiPC98,
author = {Alfredo Goldman and Gre\'egory Mouni\'e and Denis Trystram},
title = {Near Optimal Scheduling of UET-task chains on m BSP processors},
booktitle = {High Performance Computing},
volume = {},
number = {},
pages = {},
year = {1998},
address = {Madras},
publisher = {HiPC'98},
ps = {pdf/hipc.ps},
abstract = {The aim of this work is to show that scheduling a set of
independent chains on a parallel machine under the BSP model is a difficult
optimization problem which can be easily approximated in practice.
BSP is a machine independent computational model which is becoming more and
more popular. Finding the optimal solution when the number of processors is
fixed is shown to be hard. Efficient heuristics including communications
are proposed and analyzed. We particularly focus on the influence of
synchronization between consecutive supersteps. Simulations of a large number
of instances have been carried out to complement the theoretical worst case
analysis. They confirm the very good behavior of the algorithm on average.}
}
@inproceedings{GT:IPPS97,
author = {Goldman, A. and Trystram, D.},
title = {An efficient parallel algorithm for solving the knapsack problem on the hypercube},
booktitle = {Parallel Processing Symposium, 1997. Proceedings., 11th International},
year = {1997},
volume = {},
number = {},
pages = {608--615},
address = {Genebra},
http = {http://dx.doi.org/10.1109/IPPS.1997.580964},
keywords = {0/1 knapsack problem solving, dynamic programming function, efficient parallel algorithm, hypercube,
integral knapsack problem solving, irregular mesh, irregular meshes, precedence graph,
scheduling algorithm, dynamic programming, graph theory, hypercube networks, parallel algorithms,
processor scheduling},
abstract = {The authors present a new algorithm to solve the integral knapsack
problem on the hypercube. The main idea is to use the fact that the precedence
graph of the dynamic programming function of the knapsack problem is an
irregular mesh. They propose a scheduling algorithm for irregular meshes on the
hypercube. The efficiency of the algorithm is independent on the number of
processors. They also present some improvements for the solution of the 0/1
knapsack problem on the hypercube}
}
@inproceedings{GF:PPAM97,
author = {A. Goldman and S. Fidanova},
title = {Parallel execution of irregular meshes into a linear systolic array},
booktitle = {2nd International Conference on Parallel Procesing},
year = {1997},
volume = {},
number = {},
pages = {267--274},
address = {Zakopane},
publisher = {PPAM'97},
pdf = {pdf/ppam97.ps},
keywords = {Irregular mesh, scheduling, systolic algorithm, regular interconnection networks.},
abstract = {We present in this paper a scheduling algorithm for the execution
of irregular meshes into a systolic linear array. The data dependence graphs
of many problems in computer science are irregular meshes. These include the
unbounded knapsack problem, the subset sum problem, the change making problem
and the longest common subsequence problem. In this paper a scheduling
algorithm for a dependence graph is represented by an allocation function and
an initial time for each vertex. The allocation and timing function in this
paper are improvements of the previous methods. Our method reaches two lower
bounds, the lower bound on the number of processors and the lower bound on time.}
}
@inproceedings/{GFS:CONPAR94,
author = {A. Goldman and A. Ferreira and S.W. Song},
title = {Broadcasting in bus interconnection networks},
booktitle = {Parallel Processing: CONPAR 94/VAPP VI},
year = {1994},
month = {September},
volume = {854},
number = {},
pages = {797--907},
address = {},
publisher = {Springer-Verlag},
ps = {pdf/br.ps},
abstract = {In this paper we study parallel architectures where the
communication means are constituted {\em solely} by buses. These
promising architectures can use the power of bus technologies,
providing a viable way to interconnect much more processors in a
simple and efficient manner. We study the {\em hypergraph, hypergrid,
} and {\em bypertorus} architectures, which are the bus-based
versions of the well used point-to-point interconnection networks.
We give optimal algorithms for broadcasting a message from one
processor to all the others in such architectures, using a tool
called {\em simpplification}}
}
@inproceedings{FGS:PARLE94,
author = {Ferreira, A. and Goldman vel Lejbman, A. and Song, S.},
title = {Bus based parallel computers: A viable way for massive parallelism},
booktitle = {PARLE'94 Parallel Architectures and Languages Europe},
year = {1994},
pages = {553-564},
volume = {817},
publisher = {Springer Berlin/Heidelberg},
editor = {Halatsis, Costas and Maritsas, Dimitrios and Philokyprou, George and Theodoridis, Sergios},
series = {Lecture Notes in Computer Science},
ps = {pdf/parle.ps},
http = {http://dx.doi.org/10.1007/3-540-58184-7_130},
abstract = {In most distributed memory MIMD multiprocessors, processors are
connected by a point-to-point interconnection network. Since interprocessor
communication frequently constitutes serious bottlenecks, several architectures
were proposed that enhance point-to-point topologies with the help of multiple
bus systems so as to improve the communication efficiency. In this paper we
study global communication on parallel architectures where the communication
means are constituted solely by busses. We focus on the hyperpath and the
hypergrid architectures, which are the bus-based versions of the well used
point-to-point linear and grid interconnection networks. Using (hyper) graph
theoretic concepts in order to model inter-processor communication in such networks,
we developed a new tool called simplification in order to give extremely efficient
algorithms for gossiping (all-to-all or total exchange communications).}
}
@inproceedings{GFS:SBAC93,
author = {A. Goldman and A. Ferreira and S.W. Song},
title = {Comunica\c{c}\~ao em hipergrades e hipertoros usando barramentos},
booktitle = {V Simp\'osio Brasileiro de Arquitetura de Computadores},
year = {1993},
volume = {},
number = {},
pages = {},
address = {Florian\'opolis},
publisher = {SBAC PAD 93},
pdf = {},
abstract = {}
}
@inproceedings{AGS:ExtremeCom09,
author = {Luciana Arantes and Alfredo Goldman and M\'arcio Vin\'icius Dos Santos},
title = {Using Evolving Graphs to evaluate DTN routing protocols},
booktitle = {ExtremeCom 2009},
year = {2009},
volume = {},
pages = {},
address = {La\^onia},
publisher = {Proc, of the first Extreme Workshop on Communication},
abstract = {One of the main challenges of Delay-Tolerant Networks (DTNs)
is on how to define effective routing protocols. Contrarily to traditional
networks, which use static routing protocols and guarantee end-to-end paths
between nodes of the network, connectivity is intermittent in DTNs.
A routing path between two nodes is dynamically built over the time,
i.e., a connection between two intermediate nodes of a routing path is not
necessarily established beforehand. Hence, it may happen that at a given
time or period there is no direct path between two given nodes,
however further future temporary connections between some intermediary nodes
may provide a path over time, also called journey, between those two nodes.
Temporary connections between nodes, denoted contacts, is thus strongly
exploited by DTN routing protocols for message delivery. A DTN routing
protocol must carefully select journeys between nodes for performance's sake.
Usually routing takes place using a store and forward mechanism and depends
on several parameters such as time of request, availability of connectivity,
message size, network traffic, transmission delay, etc. Moreover, different
metrics can be exploited for supporting routing decisions like the number of
hops between the given nodes, the arrival.}
}
@inproceedings{FG:ASTEC09,
author = {Emilio Francesquini and Alfredo Goldman},
title = {Scheduling on multi-core clusters},
booktitle = {Workshop on Algorithms and Techniques for Scheduling on Clusters and Grids},
year = {2009},
volume = {},
pages = {},
address = {Les Plantiers},
publisher = {Proc. of ASTEC 2009},
abstract = {Nowadays, with the advent of the multi-core technology, most of the
modern computers have several cores. However, the current schedulers do not provide
automatic tools to schedule tasks to the cores. Indeed, some of them consider each
core as one whole node neglecting the advantages (and disadvantages) that the
spatial proximity amongst the cores could provide. In this talk, we will show some
of the solutions currently being employed to tackle these scheduling problems as
well as propose some of our own ideas for a model which considers the multi-core
context and its impact on the scheduling algorithms.}
}
@inproceedings{KCBFG:WSASPC08,
author = {Mariana Kolberg and Daniel Cordeiro and Alfredo Goldman and Gerd Bohlender and Luiz Fernandes},
title = {A Multithreaded Verified Method for Solving Linear Systems in Dual-Core Processors},
booktitle = {Workshop on State-of-the-Art in Scientific and Parallel Computing},
year = {2008},
volume = {},
pages = {},
address = {Trondheim},
publisher = {Proceedings of the Workshop on State-of-the-Art in Scientific and Parallel Computing (PARA 2008)},
abstract = {This paper presents a new multithreaded approach for the problem of
solving dense linear systems with verified results. We propose a new method that
allows our algorithm to run in a dual-core system without making any changes in
the floating-point rounding mode used during the computations, i.e., each processor
independently uses its own floating-point rounding strategy to do the computations.
The algorithm distributes the computational tasks among the processors
based on the floating-point rounding mode required by the task.}
}
@inproceedings{CGT:ECO08,
author = {Daniel Cordeiro and Alfredo Goldman and Denis Trystram},
title = {Implicit Cooperation in Multi-Organization Clusters},
booktitle = {XXI European Chapter on Combinatorial Optimization},
year = {2008},
volume = {},
pages = {24--25},
address = {Dubrovnik},
publisher = {Proceedings of the XXI European Chapter on Combinatorial Optimization},
abstract = {Commodity hardware and the maturity of grid middleware systems
available today allow the development of large distributed systems composed
by many parallel jobs. In order to fully utilize the available hardware and
get the best performance, we need a sophisticated scheduling model that can
respect the cluster owner's best interest and, at the same time, achieve global
performance goals.
Grid computing systems are composed by organizations that own clusters of
computers. A grid user submit his/her jobs to a scheduler system that can
choose any machine available in any of these clusters. However, each
organization (a university lab, for instance) that shares its resources
wants to take maximum advantage of its own hardware. In order to improve
cooperation between organizations, local jobs must be prioritized.
The scheduling of the jobs in the available grid machines is a crucial problem.
Although each user submits jobs locally in his/her own organization, it is
necessary to optimize the allocation of the jobs for the whole platform in
order to achieve good performance.
Pascual et al. proposed a preliminary analysis of the scheduling problem
of rigid parallel tasks in multi-organization, homogeneous clusters. In
their work, they proposed a new algorithm that, using an initial scheduling
using Highest First order done locally by each organization, produces a global
schedule that does not delay the local makespan of any organization. Their
main contribution was an algorithm for this centralized global controller that
can always be profitable. They showed that their algorithm is a 3-approximation
which is asymptotically the best that can be obtained for this specific problem.
In this work, we extend the results obtained by Pascual et al. to organizations
that run sequential jobs. Starting from the heuristic proposed by Pascual, we study
the effects of allowing each organization to choose its own scheduling objective
(such as total completion time and sum of completion times) in the global scheduling.}
}
@inproceedings{BGK:MATA05,
author = {R.M. Barbosa and Alfredo Goldman and F\'abio Kon},
title = {A Study of Mobile Agents Liveness Properties on MobiGrid},
booktitle = {Mobility Aware Technlogies and Applications (MATA'2005)},
year = {2005},
volume = {1},
pages = {30--34},
address = {Montreal},
publisher = {Mobility Aware Technlogies and Applications Companion Proceedings to LNCS 3744},
abstract = {MobiGrid is a framework for mobile agents support within
a grid computing environment. The mobile agents may be used to encapsulate
long-processing applications (tasks). In MobiGrid, to provide a
fast method of releasing the local machine and to prevent the tasks from
dying suddenly, it is possible to have two or more copies of these tasks
running independently; this concept is defined as liveness. In this paper,
our goal is to simulate a network of personal workstations and the tasks
that will be executed on them. In this way, we can study the effects of
different liveness degrees on the completion time of the tasks.}
}
@inproceedings{GGHK:MDC05,
author = {Goldchleger, Andrei and Goldman, Alfredo and Hayashida, Ulisses and Kon, Fabio},
title = {The implementation of the BSP parallel computing model on the InteGrade Grid middleware},
booktitle = {MGC '05: Proceedings of the 3rd international workshop on Middleware for grid computing},
year = {2005},
volume = {117},
pages = {1--6},
address = {Grenoble, France},
publisher = {ACM},
http = {http://doi.acm.org/10.1145/1101499.1101504},
keywords = {BSP, Parallel Computing, Grid Computing},
abstract = {InteGrade is an object-oriented grid middleware infrastructure whose
goal is to leverage existing computational resources in organizations. Rather
than relying on dedicated hardware such as reserved clusters, InteGrade focuses
on using desktops in users' offices, machines in computer laboratories, shared
workstations, as well as dedicated clusters. In this paper, we describe the
support for the execution of highly coupled parallel applications on top of
InteGrade. The paper describes the implementation of the middleware to support
BSP parallel applications (with global synchronization points), and presents
experimental results.}
}
@inproceedings{GQ:WMG03,
author = {Alfredo Goldman and Carlos Queiroz},
title = {A model for parallel job scheduling on dynamical computer grids},
booktitle = {ACM/IFIP/USENIX Middleware'2003 Workshop on Middleware for the Grid},
year = {2003},
volume = {},
pages = {264--266},
address = {Rio de Janeiro, Brazil},
publisher = {Rio de Janeiro : PUC-Rio},
abstract = {This work presents a model that allows the execution of parallel
applications in a grid environment. Our main focus is on how to share the idle
cycles of clusters and computers to execute parallel applications. We introduce
a new model with the notions of locality and adaptability. The locality is used
for job allocation, and for job migration. The adaptability provides a simple
mechanisn to allow clusters to join or leave a grid. We also propose a middleware
architecture to implement the model.}
}
@inproceedings{GKFG:WMG03,
author = {A. Goldman and F. Kon and M. Finger and A. Goldchleger},
title = {InteGrade: Object-Oriented Grid Middleware Leveraging Idle Computing Power of Desktop Machines},
booktitle = {ACM/IFIP/USENIX Middleware'2003 Workshop on Middleware for the Grid},
year = {2003},
volume = {},
pages = {232-234},
address = {Rio de Janeiro, Brazil},
publisher = {Rio de Janeiro : PUC-Rio},
abstract = {Grid computing technology improves the computing experiences at
organizations by effectively integrating distributed computing resources.
However, just a small fraction of currently available Grid infrastructures
focuses on reutilization of existing commodity computers. This paper introduces
InteGrade, a novel object-oriented middleware Grid infrastructure that focuses
on leveraging the idle computing power of shared desktop machines. Its features
include support for a wide range of parallel applications and mechanisms to
assure that owners of shared resources do not perceive any loss in the quality
of service. A prototype implementation is under construction and the current
version is available for download.}
}
@incollection{CG:ICASD10,
author = {Hugo Corbucci and Alfredo Goldman},
title = {Open Source and Agile Methods: Two worlds closer than it seems},
booktitle = {Agile Processes in Software Engineering and Extreme Programming},
year = {2010},
pages = {383--384},
volume = {48},
publisher = {Springer Berlin Heidelberg},
editor = {Aalst, Will and Mylopoulos, John and Sadeh, Norman M. and Shaw, Michael J. and Szyperski,
Clemens and Sillitti, Alberto and Martin, Angela and Wang, Xiaofeng and Whitworth, Elizabeth},
series = {Lecture Notes in Business Information Processing},
http = {http://dx.doi.org/10.1007/978-3-642-13054-0_43},
keywords = {agile methods, open source, distributed agile},
abstract = {Agile methods and Free, Libre and Open Source Software communities
have different approaches to produce high quality and successful software in
different scenarios. This work presents two surveys, each one directed to one
of the communities, aimed to identify communication issues encountered in
each environment. The results provided point out to very different communities
with common practices and behaviors but with very similar problems and view
points to solve the issues encountered.}
}
@incollection{MG:ICASD10,
author = {Mariana Bravo and Alfredo Goldman},
title = {Reinforcing the Learning of Agile Practices Using Coding Dojos},
booktitle = {Agile Processes in Software Engineering and Extreme Programming},
year = {2010},
pages = {379--380},
volume = {48},
publisher = {Springer Berlin Heidelberg},
editor = {Aalst, Will and Mylopoulos, John and Sadeh, Norman M. and Shaw, Michael J. and Szyperski,
Clemens and Sillitti, Alberto and Martin, Angela and Wang, Xiaofeng and Whitworth, Elizabeth},
series = {Lecture Notes in Business Information Processing},
http = {http://dx.doi.org/10.1007/978-3-642-13054-0_41},
abstract = {Agile practices such as pair programming or test driven development are
best learned when they are actually performed rather than read about. However, an
unexperienced learner on his own might take a long time and might make mistakes that
could be avoided if he had some help. In this work, we present an activity known as
Coding Dojo as a technique to reinforce the learning of some Agile practices. We
describe this method and present a study that evaluates its effect on learning.}
}
@incollection{KVG:ERADSP10,
author = {A. Kraemer and K. Vilar and Alfredo Goldman},
title = {Fault Tolerance using Redundant Gateway Protocols},
booktitle = {Escola Regional de Alto Desempenho de SP},
year = {2010},
pages = {},
volume = {},
publisher = {ERAD-SP 2010},
address = {S\~ao Paulo},
pdf = {pdf/erad2010.pdf},
abstract = {The goal of this paper is to compare fault-tolerant protocols inside
of redundancy gateway context. For this purpose, performance tests were
conducted with specific protocols, like HSRP, VRRP and GLBP. The results
indicate which protocol will recover more quickly from the interruption of the
default gateway.}
}
@inproceedings{BDGNT:IPDPS09,
author = {Bougeret, M. and Dutot, P.-F. and Goldman, A. and Ngoko, Y. and Trystram, D.},
title = {Combining multiple heuristics on discrete resources},
booktitle = {Parallel Distributed Processing, 2009. IPDPS 2009. IEEE International Symposium on},
year = {2009},
volume = {},
number = {},
pages = {1--8},
keywords = {SAT solvers, approximation ratio, constant ratio polynomial approximation, good combination,
homogeneous discrete resources, multiple heuristics, parallel resources, portfolio problem,
resource allocation, parallel processing, polynomial approximation, resource allocation},
abstract = {In this work we study the portfolio problem which is to find a good
combination of multiple heuristics to solve given instances on parallel resources
in minimum time. The resources are assumed to be discrete, it is not possible to
allocate a resource to more than one heuristic. Our goal is to minimize the
average completion time of the set of instances, given a set of heuristics on
homogeneous discrete resources. This problem has been studied in the continuous
case in [T. Sayag et al., 2006]. We first show that the problem is hard and that
there is no constant ratio polynomial approximation unless P = NP in the general
case. Then, we design several approximation schemes for a restricted version of
the problem where each heuristic must be used at least once. These results are
obtained by using oracle with several guesses, leading to various tradeoff between
the size of required information and the approximation ratio. Some additional
results based on simulations are finally reported using a benchmark of instances
on SAT solvers.}
}
@inproceedings{CG:WGCA08,
author = {Alex Camargo and A. Goldman},
title = {An\'alise e disposi\c{c}\~ao de recursos de rede em grades computacionais},
booktitle = {VI Workshop on Grid Computing and Applications},
year = {2008},
pages = {153--154},
volume = {},
publisher = {Proceedings of the VI Workshop on Grid Computing and Applications},
address = {Rio de Janeiro},
abstract = {Arcabou\c{c}os de grades computacionais t\^em se popularizado nos \'ultimos
anos, por serem uma proposta concreta para gerenciamento e uso de recursos
distribu\'idos. Alguns destes arcabou\c{c}os, como o Integrade, tem como caracter\'istica
permitir a execu\c{c}\~ao de aplica\c{c}\~oes paralelas fortemente acopladas, onde a
otimiza\c{c}\~ao de comunica\c{c}\~ao \'e fator crucial de desempenho das aplica\c{c}\~oes. Neste
artigo apresentamos um estudo sobre infer\^encia de topologia f\'isica das redes
locais que formam o arcabou\c{c}o de grade, de forma a prover dados para que o
algoritmo de escalonamento aloque as tarefas da melhor forma poss\'ivel.}
}
@inproceedings{GNT:PMAA08,
author = {A. Goldman and Y. Ngoko and D. Trystram},
title = {Combining numerical iterative solvers},
booktitle = {5th International workshop on Parallel Matrix Algorithms and Applications (PMAA)},
year = {2008},
pages = {17--18},
volume = {},
publisher = {Proceedings of the 5th International Workshop on Parallel Matrix Algorithms and Appications},
address = {Neuchatel, Switzerland},
pdf = {pdf/pmaa-2008.pdf},
abstract = {Given a linear system there are several solvers which can be used to solve it. However,
according to the properties of the linear system different solvers may have different convergence
speeds, or may even not converge at all. Nevertheless, it can be difficult to verify
these properties in practice, mainly due to rounding errors, and there are also some cases
where no direct property can be used. In this special situations there is no easy choice on
the best solver, so instead of determining it, we are interest in finding good combinations
of the solvers.
We are interested by the resolution of sparse systems with three solvers based on three
different iterative methods. The numerical methods used are the Conjugate Gradient (CG)
method, the BiConjugate Gradient Stabilized (BiCGSTAB) method and the Transpose Free
Quasi Minimal Residual Method (TFQMR).
To combine numerical solvers, we use an approach based on algorithm portfolio. The
basic idea is to interleave iterations of numerical solvers in cycles which are executed until
one solver finds a solution. We first study the combination of numerical solvers in an
offline setting. In this setting we suppose that a representative set of all linear systems
is available. The goal is to combine the set of numerical solvers in order to minimize the
average completion time.
Then, we study the combination in an on-line setting. In this setting, we do not suppose
any previous knowledge. Some heuristics are presented. The first heuristic periodically
executes a same cycle of iterations for each numerical solvers. The other heuristics adapts
their cycles of iterations from convergence informations gathered from previous cycles. The
main difficulty in these latter cases is to define metrics and rules that will be used to evaluate
the convergence of previous cycles and to define next cycles.
We experiment our approaches using the SPARSKIT library. We present comparisons
among heuristics and solvers, and we also study the impact of the cycle size on the execution
times.}
}
@inproceedings{GG:CCGrid07,
author = {Eduardo Guerra and Alfredo Goldman},
title = {Tool and Application Experiences with the Grid Application Toolkit (GAT)},
booktitle = {CCGrid 2007 - Posters, 2007},
year = {2008},
pages = {},
volume = {},
publisher = {Proceedings of the 5th International Workshop on Parallel Matrix Algorithms and Appications},
address = {Rio de Janeiro},
abstract = {The establishment of Grid computing resulted in the deployment
of several infrastructures and tools. However, this diversity is at the same
time one of the major strengths and a big challenge of the grid. Although the
Global Grid Forum (GGF) aims at a global standardization, these efforts will
take time so users and developers will have to deal with such diversity for a
while. In this paper, we report our experience with the Grid Application Tookit
(GAT), a grid programming interface for tools and applications which abstract
the grid technology diversity. We describe the development of an integrated and
extensible development environment (IDE) for the Grid. We also present the
deployment on the InteGrade middleware of a GAT application originally written
for the Globus middleware.}
}
@inproceedings{ERPG:imeusp07,
author = {P. Esm\'erio and F. Raganhan and H. Posca and A. Goldman},
title = {O uso de ferramentas colaborativas on-line no ensino de gradua\c{c}\~ao},
booktitle = {II Simposio de inicia\c{c}\~ao cient\'ifica e p\'os-gradua\c{c}\~ao do IME-USP},
year = {2007},
pages = {},
volume = {},
publisher = {Anais do II Simposio de inicia\c{c}\~ao cient\'ifica e p\'os-gradua\c{c}\~ao do IME-USP},
address = {}
}
@inproceedings{BG:WGCA02,
author = {R.M. Barbosa and A. Goldman},
title = {MobiGrid: framework for mobile agents on computational grid environments},
booktitle = {III Workshop on Grid Computing and Applications},
year = {2005},
pages = {},
volume = {},
publisher = {Anais do III Workshop on Grid Computing and Applications},
address = {Petr\'opolis},
abstract = {This project focuses on the implementation of a framework for mobile
agents support within a grid environment project, namely InteGrade. Our goal is
to present a framework where time consuming sequential tasks can be executed
using mainly the idle cycles of a network of personal workstations. The mobile
agents may be used to encapsulate long processing applications (tasks). These
agents can migrate whenever the local machine is requested by its user, since
they are provided with automatic migration capabilities. Our framework also
provides to the user a manager that keeps track of the agents submitted by him.}
}
@inproceedings{Gold:CCGrid02,
author = {Alfredo Goldman},
title = {Scalable Algorithms for Complete Exchange on Multi-Cluster Networks},
booktitle = {2nd IEEE/ACM International Symposium on Cluster Computing and the Grid},
year = {2002},
pages = {286--287},
volume = {},
publisher = {IEE/ACM CCGrid 2002},
address = {Berlin, Germany},
abstract = {Inside a dedicated parallel computer the communication times were
generally modeled in the same way, independently of which processors communicate.
In a network where the links among the computers are heterogeneous, or in
hierarchical clusters, this might not be true anymore. Computers that have faster
links, or are closer to each other should be able to exchange messages faster.
These differences on communication times should be considered, not only for
attributing tasks to the processors but also in global
synchronization/communication. The goal of this paper is to study irregular
all-to-all communications in a network of dedicated clusters.}
}
@inproceedings{Gold:NewSPDS01,
author = {Alfredo Goldman},
title = {Scheduling communications on a multi-cluster networks},
booktitle = {New trends in scheduling for parallel and distributed systems},
year = {2001},
pages = {},
volume = {},
publisher = {Book of Abstracts - New trends in scheduling for parallel and distributed systems},
address = {Marseille},
pdf = {pdf/mcn2001.pdf},
keywords = {Scheduling of communication, BSP-like synchronization, global communication},
abstract = {Nowadays, with the introduction of clusters of computers
the notion of interprocessor communication is of growing
interest. Inside a dedicated cluster the communication times
were generally modeled in the same way, independently of
which processors communicate. In a network where the
links among the computers are heterogeneous this might not
be true anymore. Computers that have faster links, or are
closer with each other should be able to exchange messages
faster. These differences on communication times should
be considered, not only for attributing tasks to the processors
but also in global synchronization/communication. The
goal of this paper is to study the global communication in a
network of dedicated clusters. We propose new communication
algorithms based on known algorithms and we present
simulations on their expected performances.}
}
@inproceedings{GPT:IWIN97,
author = {A. Goldman and J. Peters and D. Trystram},
title = {Total Exchange with Messages of Different Sizes},
booktitle = {International Workshop on Interconnection Networks},
year = {1997},
pages = {},
volume = {},
publisher = {IWIN'97},
address = {Praga},
http = {},
abstract = {}
}
@techreport{GPT:SFU02,
author = {Alfredo Goldman and Joseph G. Peters and Denis Trystam},
title = {Exchanging Messages of Different Sizes},
institution = {School of Computer Science, Simon Fraser University},
year = {2002},
month = {September},
type = {},
number = {},
address = {},
note = {},
pdf = {ftp://fas.sfu.ca/pub/cs/techreports/2002/CMPT2002-08.pdf},
keywords = {Personalized communications, BSP model, communication primitives},
abstract = {This paper deals with the study of the exchange of messages among
a set of processors linked through an interconnection network. We focus on
general, non-uniform versions of message exchange problems in asynchronous
systems with a linear cost model and messages of arbitrary sizes. We extend
previous complexity results to show that the general asynchronous problems are
NP-complete. We present several heuristics and determine which algorithms are
best suited to several parallel systems. We propose new algorithms that
combine the advantages of some of the heuristics. We conclude with experiments
and simulations of the algorithms and analyses of their performances.}
}
@techreport{GKGFS:IMEUSP02,
author = {Andrei Goldchleger and Fabio Kon and Alfredo Goldman and Marcelo Finger and Siang Wun Song},
title = {InteGrade: Rumo a um Sistema de Computa\c{c}\~ao em Grade para Aproveitamento de Recursos Ociosos em M\'aquinas Compartilhadas},
institution = {Instituto de Matem\'atica e Estat\'istica, Universidade de S\~ao Paulo},
year = {2002},
month = {September},
type = {},
number = {},
address = {},
note = {},
pdf = {http://www.ime.usp.br/~gold/rt-integrade.pdf},
abstract = {Computational Grids are a new trend in distributed computing systems.
They allow the sharing of geographically disributed resources in an efficient way,
extending the boundaries of what we perceive as distributed computing. Various
sciences can benefit from the use of Grids to solve CPU-intensive problems,
creating potencial benefits to the entire society. With further developement of
Grid technology, it is very likely that corporations, universities, and public
institutions will exploit Grids to enhance their computing infrastructure. In
recent years, there has been a large increase in Grid technology research, which
has produced some reference Grid implementations. This technical report presents
the main features of four major Grid projects: Globus, Legion, Condor, and BOINC.
We describe the design principles and the most important aspects of each system
from our point of view. Finally, we introduce a new research project started
recently at the University of S\~ao Paulo: InteGrade. In this new research effort,
we aim at extending previous Grid research by using advanced distributed object
technologies to build a novel Grid infrastructure to enable the use of idle
processing time in commodity workstations without loss of Quality of Service for
workstation users.}
}
@phdthesis{Gold:PHD99,
author = {Alfredo Goldman},
title = {Impact des mod\`eles d'ex\'ecution pour l'ordonnancement en calcul parall\`ele},
school = {Institut National Polythecnique de Grenoble, INPG},
year = {1999},
address = {Grenoble, France},
note = {},
abstract = {}
}
@mastersthesis{Gold:Master94,
author = {Alfredo Goldman},
title = {Novas Estruturas de Interconex\~ao a base de Barramentos: Uma contribu\'i\c{c}\~ao a computa\c{c}\~ao maci\c{c}amente paralela},
school = {Universidade de S\~ao Paulo, USP},
year = {1994},
address = {S\~ao Paulo, Brazil},
note = {My master thesis was awarded with the third place on the I Thesis
Contest of the Latin American Congress of CLEI (Centro de Estudios
Latinoamericanos en Inform\'atica), Mexico City, Mexico, September 1994,
and with the first place on the VII Thesis Contest of the XIV Congress
of The Brazilian Computer Society, Caxambu, August 1994},
pdf = {pdf/resumo.ps},
abstract = {In most distributed memory MIMD multiprocessors, processors are
connected by a point-to-point inter-connection network, usually modeled by a
graph where processors are nodes and communications links are edges. Since
interprocessor communication frequently constitutes serious bottlenecks, several
architectures were proposed that enhance point-to-point topologies with the help
of multiple bus systems. In this work we demonstrate the interest of parallel
architectures where the communication means are constitured {\em solely} by busses.
We study some point-to-point topologies, and their modeling by graphs. We also
study algorithms for global communication and some previous works that use busses.
We propose generalizations of the ring, grid, etc, which are the bus-based versions
of the well used point-to-point linear and grid interconnection networks. We show
how to use hypergraph concepts in order to model inter-processor communication in
such networks and we give efficient algorithms for broadcast and gossiping. We
developed a new tool called {\em simplification}. The ideia is to construct a graph,
to be called {\em simplified graph}, from the original topology, so that it will
become easy to describe and perform communication schemes. The simplification concept
also allows us to use some already known communication algorithms for usual networks.}
}
This file was generated by bibtex2html 1.95