|
CSIM is an ideal simulation tool
for our needs. Because CSIM is a C/C++ library as opposed
to a dedicated simulation language, I can develop my models
in C++ and simply use CSIM to define the parallel and/or discrete
event activities. I have written many models using CSIM and
typically only about 15-20 percent of the code is discrete
event "simulation" related, the remaining code is
either support for the model or the definition of the "business
rules."
We have used CSIM to create behavioral
models of custom ASIC's, communication
networks, and computer plug-in boards.
Some of these models were interfaced
to external software and hardware
modules. This flexibility would
be very difficult to achieve in
the other simulation languages or
packages that I am familiar with.
Ed Korsberg
Allen
Bradley, Inc.
Mayfield Heights, OH
|
 |
| |
|
|
|

|
One project inside HP has used
CSIM to model the performance of
a complex PCI host bridge, interfacing
multiple Fibre Channel mass storage
PCI cards. The models of the Fibre
Channel cards are fairly detailed,
covering internal chip buffers,
state machines, link resources,
chip overheads, and the exact sequence
of PCI transactions associated with
each disk I/O. The model of the
PCI host bridge is extremely detailed,
covering many internal chip operations
at the internal clock cycle level.
The model measures the throughput
of various buses and links, and
supports the optional logging of
processor memory bus transactions,
PCI bus transactions, and PCI cycle-by-cycle
traces.
CSIM's automatic statistics gathering
mechanisms measure the utilization
of various busses, state machines,
and links. The model uses CSIM's
explicit statistics gathering mechanisms
to measure detailed working depth
information on various internal
chip queues and similar statistics
for outstanding transactions on
the processor memory bus. Under
work loads consisting of many hundreds
of concurrent disk I/Os, enough
to saturate a PCI-2X bus, simulation
time advances at roughly one 2000th
that of wall clock time. This relatively
fast model execution speed enables
the detailed sensitivity analysis
of various throughputs and resource
utilizations as a function of various
model parameters, taken over many
data points. Thus, families of performance
curves can be derived from the model,
as opposed to a few discrete points.
Joe Cowan
Hewlett
Packard Co.
Fort Collins, CO
|
| |
|
|
|
I have used CSIM many times in
the past. The uses included:
- Modeling of a satellite communications
system in which there are many
low utilization terminals. The
terminals had minimal control
and the protocol was a variation
of the slotted aloha system. I
was able to develop and use this
model in less than two weeks of
work (which might have been months
for some folks). I benefited from
CSIM's flexibility and, if I may
say so, my considerable experience
in modeling communications systems.
- I used CSIM to model a priority
based network communications system.
The model was simple, but it was
used to explain the results we
were measuring from the real system
which we could not understand.
The model eventually allowed to
us to fully understand what was
happening. Our approach - "build
first, model second" - was
the reverse of the normal approach,
which is "model first, build
second". The above projects
were a while back, during the
late eighties and early nineties.
- Today I am involved in a major
task, to do simulation of the
Army's mobile soldiers combat
radio network. Something called
the 188-220x protocols are used
for channel access in these networks.
I am building a comprehensive
simulation of such networks and
will use the model to study impact
of various database synchronization
techniques which must communicate
over such (rather unreliable)
networks.
I find CSIM natural and easy to
use. I find the improvements over
the years to be all good, including
the confidence interval stuff. I
find that I can pretty much simulate
anything in CSIM.
Gautam Thaker
King of Prussia, PA
|
|
| |
|
|
 |
We use CSIM in our product, SPE-ED.
SPE-ED is used to model the operational aspects of software.
Our customers use SPE-Ed to evaluate software designs before
they build the software - they want to "build it right
once."
Most of our customers are in the
telecommunications industry. The
software they are developing is
used to help manage the business
aspects of their companies; these
companies are experiencing rapid
growth. They are using SPE-ED to
help design and implement software
that will be meet the requirements
imposed by this growth. The CSIM
models are critical to evaluating
these designs.
At Performance Engineering,
we could have developed our own simulation engine "from
scratch". However, our response to this suggestion is
always, "Why bother? CSIM is lean and mean: it uses the
least amount of memory and gives the fastest execution."
In addition, we find that CSIM is "well suited to modeling
software."
One SPE-ED customer
is a developer of an airline reservation system. They have
to convert from legacy software, in which performance is a
major issue. A new SPE-ED customer is a contract software
developer. They feel that it is important to analyze performance
issues for future systems.
Connie Smith
Performance
Engineering Services
Santa Fe, NM
|
| |
|
|
|
Professor Franklin is leading
a research project involving high-performance database management
systems. He sent the following comments:
We have built two models with CSIM.
The main one is a model of a distributed
database system. It has been used
in probably half a dozen different
studies and has been extended to
interface with a query optimizer
and to process information retrieval
workloads (in addition to the usual
database workloads). The second
model is a much simpler one, that
has been used in our data broadcast
project; about five or six studies
have used this model.
CSIM is the best thing we can use
- the models we build are at just
the right level of abstraction:
low enough to be flexible but high
enough to create building blocks
which are easily used to build useful
models.
The ability to interface real code
with the simulator is an extremely
useful feature. Often, portions
of the simulator and the real system
share the same code. This mean that
the work put into the simulator
is not lost when we move to the
real system.
We find that student researchers,
who typically already know C++,
readily pickup CSIM.
We have done a tremendous number
of studies - studies that we could
have never done if we had had to
build these models from scratch.
Our research depends on close interactions
between the simulation model and
the real system; we routinely validate
and improve the simulator as we
build the real system.
Michael Franklin
Department
of Computer Sciences
University of California Berkeley
|
|