|
|
Books > Computing & IT > Computer programming
If you look around you will find that all computer systems, from
your portable devices to the strongest supercomputers, are
heterogeneous in nature. The most obvious heterogeneity is the
existence of computing nodes of different capabilities (e.g.
multicore, GPUs, FPGAs, ...). But there are also other
heterogeneity factors that exist in computing systems, like the
memory system components, interconnection, etc. The main reason for
these different types of heterogeneity is to have good performance
with power efficiency. Heterogeneous computing results in both
challenges and opportunities. This book discusses both. It shows
that we need to deal with these challenges at all levels of the
computing stack: from algorithms all the way to process technology.
We discuss the topic of heterogeneous computing from different
angles: hardware challenges, current hardware state-of-the-art,
software issues, how to make the best use of the current
heterogeneous systems, and what lies ahead. The aim of this book is
to introduce the big picture of heterogeneous computing. Whether
you are a hardware designer or a software developer, you need to
know how the pieces of the puzzle fit together. The main goal is to
bring researchers and engineers to the forefront of the research
frontier in the new era that started a few years ago and is
expected to continue for decades. We believe that academics,
researchers, practitioners, and students will benefit from this
book and will be prepared to tackle the big wave of heterogeneous
computing that is here to stay.
The idea of this book grew out of a symposium that was held at
Stony Brook in September 2012 in celebration of David S.Warren's
fundamental contributions to Computer Science and the area of Logic
Programming in particular. Logic Programming (LP) is at the nexus
of Knowledge Representation, Artificial Intelligence, Mathematical
Logic, Databases, and Programming Languages. It is fascinating and
intellectually stimulating due to the fundamental interplay among
theory, systems, and applications brought about by logic. Logic
programs are more declarative in the sense that they strive to be
logical specifications of "what" to do rather than "how" to do it,
and thus they are high-level and easier to understand and maintain.
Yet, without being given an actual algorithm, LP systems implement
the logical specifications automatically. Several books cover the
basics of LP but focus mostly on the Prolog language with its
incomplete control strategy and non-logical features. At the same
time, there is generally a lack of accessible yet comprehensive
collections of articles covering the key aspects in declarative LP.
These aspects include, among others, well-founded vs. stable model
semantics for negation, constraints, object-oriented LP, updates,
probabilistic LP, and evaluation methods, including top-down vs.
bottom-up, and tabling. For systems, the situation is even less
satisfactory, lacking accessible literature that can help train the
new crop of developers, practitioners, and researchers. There are a
few guides onWarren's Abstract Machine (WAM), which underlies most
implementations of Prolog, but very little exists on what is needed
for constructing a state-of-the-art declarative LP inference
engine. Contrast this with the literature on, say, Compilers, where
one can first study a book on the general principles and algorithms
and then dive in the particulars of a specific compiler. Such
resources greatly facilitate the ability to start making meaningful
contributions quickly. There is also a dearth of articles about
systems that support truly declarative languages, especially those
that tie into first-order logic, mathematical programming, and
constraint solving. LP helps solve challenging problems in a wide
range of application areas, but in-depth analysis of their
connection with LP language abstractions and LP implementation
methods is lacking. Also, rare are surveys of challenging
application areas of LP, such as Bioinformatics, Natural Language
Processing, Verification, and Planning. The goal of this book is to
help fill in the previously mentioned void in the LP literature. It
offers a number of overviews on key aspects of LP that are suitable
for researchers and practitioners as well as graduate students. The
following chapters in theory, systems, and applications of LP are
included.
Wearable continuous monitoring systems are necessary in risky
environments such as mining and diving and are especially important
in the medical monitoring of patients both in medical facilities
and at home. All these applications of monitoring with data
transmission functions can be achieved by using wearable antennas.
Recently, possibilities of connecting completely independent
appliances with textiles have emerged. However, full success will
be achieved only when antennas and all related components are
entirely converted into 100% textile materials. Design and
Optimization of Sensors and Antennas for Wearable Devices provides
innovative insights on the development of adaptable materials and
textile antennas that can be used in the construction of wearable
devices that are biocompatible and offer high conductivity, low
cost, simplistic manufacturing, are comfortable for the wearer, and
are water/climate safe and condition amicable. The content within
this publication examines data transmission, wearable computing,
and medical applications. It is designed for engineers,
manufacturers, researchers, academicians, and scientists who are
interested in the development of wearable technologies.
To provide the necessary security and quality assurance activities
into Internet of Things (IoT)-based software development,
innovative engineering practices are vital. They must be given an
even higher level of importance than most other events in the
field. Integrating the Internet of Things Into Software Engineering
Practices provides research on the integration of IoT into the
software development life cycle (SDLC) in terms of requirements
management, analysis, design, coding, and testing, and provides
security and quality assurance activities to IoT-based software
development. The content within this publication covers agile
software, language specification, and collaborative software and is
designed for analysts, security experts, IoT software programmers,
computer and software engineers, students, professionals, and
researchers.
Innovation is the key to maintain competitive advantage. Innovation
in products, processes, and business models help companies to
provide economic value to their customers. Identifying the
innovative ideas, implementing those ideas, and absorbing them in
the market requires investing many resources that could incur large
costs. Technology encourages companies to foster innovation to
remain competitive in the marketplace. Emerging Technologies for
Innovation Management in the Software Industry serves as a resource
for technology absorption in companies supporting innovation. It
highlights the role of technology to assist software
companies-especially small start-ups-to innovate their products,
processes, and business models. This book provides the necessary
guidelines of which tools to use and under what situations.
Covering topics such as risk management, prioritization approaches,
and digitally-enabled innovation processes, this premier reference
source is an ideal resource for entrepreneurs, software developers,
software managers, business leaders, engineers, students and
faculty of higher education, researchers, and academicians.
The proliferation of wireless communications has led to mobile
computing, a new era in data communication and processing allowing
people to access information anywhere and anytime using lightweight
computer devices. Aligned with this phenomenon, a vast number of
mobile solutions, systems, and applications have been continuously
developed. However, despite the opportunities, there exist
constraints, challenges, and complexities in realizing the full
potential of mobile computing, requiring research and
experimentation. Algorithms, Methods, and Applications in Mobile
Computing and Communications is a critical scholarly publication
that examines the various aspects of mobile computing and
communications from engineering, business, and organizational
perspectives. The book details current research involving mobility
challenges that hinder service applicability, mobile money transfer
services and anomaly detection, and mobile fog environments. As a
resource rich in information about mobile devices, wireless
broadcast databases, and machine communications, it is an ideal
source for computer scientists, IT specialists, service providers,
information technology professionals, academicians, and researchers
interested in the field of mobile computing.
Sustaining a competitive edge in today's business world requires
innovative approaches to product, service, and management systems
design and performance. Advances in computing technologies have
presented managers with additional challenges as well as further
opportunities to enhance their business models. Software
Engineering for Enterprise System Agility: Emerging Research and
Opportunities is a collection of innovative research that
identifies the critical technological and management factors in
ensuring the agility of business systems and investigates process
improvement and optimization through software development.
Featuring coverage on a broad range of topics such as business
architecture, cloud computing, and agility patterns, this
publication is ideally designed for business managers, business
professionals, software developers, academicians, researchers, and
upper-level students interested in current research on strategies
for improving the flexibility and agility of businesses and their
systems.
|
|