Computational & Technology Resources
an online resource for computational,
engineering & technology publications |
|
Civil-Comp Proceedings
ISSN 1759-3433 CCP: 77
PROCEEDINGS OF THE NINTH INTERNATIONAL CONFERENCE ON CIVIL AND STRUCTURAL ENGINEERING COMPUTING Edited by: B.H.V. Topping
Paper 136
Distributed Finite Element Analysis and the .NET Framework R.I. Mackie
Civil Engineering Division, University of Dundee, UK R.I. Mackie, "Distributed Finite Element Analysis and the .NET Framework", in B.H.V. Topping, (Editor), "Proceedings of the Ninth International Conference on Civil and Structural Engineering Computing", Civil-Comp Press, Stirlingshire, UK, Paper 136, 2003. doi:10.4203/ccp.77.136
Keywords: object-oriented programming, finite element analysis, distributed analysis, parallel computing, .NET.
Summary
The finite element method is probably the most widely used numerical method in
engineering. From its first inception, availability of processing power has exerted a
significant constraint on the problems that can be solved. As computing power has
increased by many orders of magnitude over the decades, so the problems that can
be addressed have greatly expanded. Even so, computing power is still a limitation,
particularly with regard to three-dimensional, non-linear and dynamic problems.
One of the technologies used to seek to overcome these problems has been the use
of parallel processing. This has ranged from specialist super computers, through to
clusters of workstations. In recent years the use of clusters of PC's has received
increasing attention. Until recently this involved the use of software such as PVM of
MPI to enable the computers to work together. Now distributed computing is
increasingly becoming available on standard desktop operating systems, and this
trend will accelerate rapidly with the recent advent of the Microsoft .NET
framework.
A distributed finite element system is presented which represents the initial work of an ongoing project. The system builds upon an existing object-oriented finite element system [1]. The key feature of the existing system was the use of a distributed data structure, with nodes and elements being distributed around the model, rather than being held in central lists or arrays. This had already proved invaluable in the implementation of sub-structuring solution algorithms, and multi- threaded implementation, and this provided a solid foundation for the development of the existing system. The system consisted of a client which was used to create the structural model. Several "drones" register on a Web Server, and these drones are responsible for calculations associated with individual sub-structures. The client queries the Web Server to discover how many drones are available, and then distributes the sub- structures around the available drones. The client and drones communicate on a peer-to-peer basis, and the calculations for the interface degrees of freedom are carried out on the client. Solution is carried out using a direct domain decomposition method [2]. In the current version communication is achieved using TCP and sockets, though the possibility of using remote objects will be investigated in the future. The model data consists of geometric data, sub-division data, applied loads etc. No node or element data needs to be sent as mesh generation is carried out by the drone, therefore data transfer is minimized. The system was used on a cluster of 700 MHz machines with 128 Mb memory. Problems of various sizes were tested and for all but the smallest problems good speed-up was achieved. The system was written in C#, a relatively new language developed specifically with the .NET framework in mind. Execution speed was compared with that produced by similar code written in C++. If "safe" code was used, then the execution times were longer for the C# code, but not excessively so. If "unsafe" code was used for key vector operations, then the C# code was faster than the C++ code. Though the range of tests was rather limited, it is concluded that there need be no serious execution time concerns over using C#. References
purchase the full-text of this paper (price £20)
go to the previous paper |
|