With the current trend towards multi-core processors and computer grids, parallelism in system simulation is becoming inevitable. Performing multiple tasks concurrently can save both time and money. However, this also puts higher demands on simulation software. This thesis investigates how simulation-based product development can benefit from distributed simulation.One parallelization method is to cut apart models for simulation with distributed solvers by using time delays. The transmission line element method (TLM) is used, which eliminates numerical errors by introducing physically motivated time delays. Results show that linear speed-ups can be obtained for large models with balanced workloads. Different task scheduling techniques are tested. It is found that a fork-join algorithm with implicit synchronization performs best for models with a large total workload. On the other hand, a task-pool implementation with lock-based synchronization works better with smaller workloads.The distributed solver method virtually equals co-simulation between different simulation tools. Co-simulation also induces time delays at the interface variables, which makes TLM a useful method. An emerging standard for coupling of simulation tools is the Functional Mock-up Interface (FMI). Experiments show that FMI works well together with TLM, even when connecting different simulation domains such as system simulation and multi-body mechanics. Combining FMI with TLM enables a framework for tool-independent co-simulation with distributed solvers and time steps.When introducing distributed solvers, it can be suitable to maintain the same structure that was used in the modelling process. A popular object-oriented equation-based modelling language is Modelica. Instead of flattening the model for simulation with a centralized solver, TLM makes it possible to use different solvers for different objects in the model. Two approaches are investigated. First, Modelica support is implemented in the Hopsan TLM tool with a code generator. Second, Modelica models are imported to Hopsan through the FMI interface. Both methods are feasible. While the first requires less overhead i work, the second makes it possible to mix models from different Modelica tools and to use all the features of each individual tool. Depending on the number of TLM elements and their locations, model structures with different granularities can be achieved.Parallelism can be introduced at different levels. The distributed solver approach results in parallelism at the model-level. It is also possible to parallelize equation solvers, or to run several simulations in parallel. The latter is especially useful for simulation-based design optimization. An algorithm for profile-based scheduling of parallel optimization jobs is proposed that takes parallelism at both model-level and optimization level into account. Parallel optimizations can then be executed on either homogeneous or heterogeneous computer grids. This makes it possible to utilize the large amount of unused co...