[gmes-user] The first posting
GMES is a free Python package for FDTD electromagnetic simulations.
Status: Alpha
Brought to you by:
kwchun
|
From: 전경원 <kw...@gi...> - 2012-08-21 01:52:14
|
Hi. I am the developer of GMES, Kyungwon Chun. >From now on, I'll report the development progress and plan of GMES, through this mailing list to guide any one who is interested. These days, I've tried to accelerate the time-stepping speed. The direction of work is adjusting virtual method level to reduce overhead of vtable look up and increasing memory locality for the cache hit ratio. The PwMaterial abstract base class lost its virtual method, 'update', and the 'update_all' method became the new virtual method. This change reduce the number of vtable lookup to just one for PwMaterial, for one time-step. Also, there is a change in attributes of 'PwMaterial' class. It just saves sequence of index, and its concrete class save the sequence of 'PwMaterialParam'. These sequences use std::vector as a container which provides a contiguous storage. To make the contiguous storage of 'PwMaterialParam', GMES stores 'PwMaterialParam' instances, not the pointer of it. These changes increased the stepping speed almost 5 times. Now, the source in the trunk only reflects the virtual function changes. The memory locality fixes will be updated soon, also. See you. |