Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Old September 23rd 07, 08:34 PM posted to rec.radio.amateur.antenna
external usenet poster
 
First recorded activity by RadioBanter: Jun 2007
Posts: 22
Default Speedup NEC-Engine, using multiple CPU-Cores

Has anybody a solution to speedup the NEC-Engine, using multiple CPU-
Cores?
In standard use, only one NEC-Engine is running. The NEC-Engine does
not use multi-threading technique and therefore only one CPU-Core is
running.

Todays computers have multiple cores. Even I am using one with two
cores (Intel Dual-Core). And there are more cores available in the
future (3,4 and more).

My question is, is threre a solution for speeding up the antenna
calculation using NEC2/4-Engine? If not, I plan to code a wrapper NEC-
Engine, that is able to busy all CPU-Cores and merging the results to
one output file. Especially antenna calculation can be easly divided
into multiple parts (eg. radiation pattern division). If there is a
solution, I do not want to reinvent the tire again.

Regards,
Aziz

  #2   Report Post  
Old September 23rd 07, 09:53 PM posted to rec.radio.amateur.antenna
art art is offline
external usenet poster
 
First recorded activity by RadioBanter: Sep 2006
Posts: 1,188
Default Speedup NEC-Engine, using multiple CPU-Cores

On 23 Sep, 12:34, wrote:
Has anybody a solution to speedup the NEC-Engine, using multiple CPU-
Cores?
In standard use, only one NEC-Engine is running. The NEC-Engine does
not use multi-threading technique and therefore only one CPU-Core is
running.

Todays computers have multiple cores. Even I am using one with two
cores (Intel Dual-Core). And there are more cores available in the
future (3,4 and more).

My question is, is threre a solution for speeding up the antenna
calculation using NEC2/4-Engine? If not, I plan to code a wrapper NEC-
Engine, that is able to busy all CPU-Cores and merging the results to
one output file. Especially antenna calculation can be easly divided
into multiple parts (eg. radiation pattern division). If there is a
solution, I do not want to reinvent the tire again.

Regards,
Aziz


Way to go Aziz, programmers are not keeping up with machines
available.
You could make a lot of money with that
Art KB9MZ.....XG

  #3   Report Post  
Old September 24th 07, 01:28 AM posted to rec.radio.amateur.antenna
external usenet poster
 
First recorded activity by RadioBanter: Jan 2007
Posts: 61
Default Speedup NEC-Engine, using multiple CPU-Cores

On Sep 23, 12:34 pm, wrote:
Has anybody a solution to speedup the NEC-Engine, using multiple CPU-
Cores?
In standard use, only one NEC-Engine is running. The NEC-Engine does
not use multi-threading technique and therefore only one CPU-Core is
running.


The NEC engine calls standard matrix math routines, so one can replace
the libraries with a multicore library (or, even, with a MPI based
cluster library). This can help a lot on huge models (thousands of
segments)


Todays computers have multiple cores. Even I am using one with two
cores (Intel Dual-Core). And there are more cores available in the
future (3,4 and more).

My question is, is threre a solution for speeding up the antenna
calculation using NEC2/4-Engine? If not, I plan to code a wrapper NEC-
Engine, that is able to busy all CPU-Cores and merging the results to
one output file. Especially antenna calculation can be easly divided
into multiple parts (eg. radiation pattern division). If there is a
solution, I do not want to reinvent the tire again.


Or when you're doing multiple frequencies.

The NEC engine does things in several chunks:
a) building the matrix from all the geometry, including the coupling
between segments -this is frequency dependent
b) solving the matrix for the segment currents - this is a
straightforward (but time consuming) linear equation solving process
c) calculating the field by integrating all the segment currents -
this is independent among the az/el's or near field points in the
output.

So there's opportunities for parallelism in each of the three chunks,
some of which are almost embarassingly parallel (EP).
a) if you're doing an analysis at multiple frequencies, running each
frequency on a separate machine/core is a great idea, since they're
essentially independent.
b) as you suggested, breaking up the output computation (c, above) is
a natural
c) using a multicore or cluster matrix math package can help with b,
above.


Whatever you do, you should seriously contemplate basing your work on
the NEC4 engine, rather than the older NEC 2 engine. Sure, you'll
have to pay for it, but it's structured better for what you want to
do, and more accurate to boot.



  #6   Report Post  
Old September 24th 07, 06:05 AM posted to rec.radio.amateur.antenna
external usenet poster
 
First recorded activity by RadioBanter: Jan 2007
Posts: 61
Default Speedup NEC-Engine, using multiple CPU-Cores

On Sep 23, 7:47 pm, Roy Lewallen wrote:
wrote:



I was recently told that the non-commercial NEC-4 license doesn't
include source code. I haven't confirmed this, but it's something you
should investigate before purchasing an NEC-4 license if you intend to
modify the source code.


My non-commercial copy included Source. I can't imagine that getting
only precompiled versions would be particularly useful, unless they're
willing to make a whole raft of versions (more than you get with the
release I got) with various values for the maximum segments, etc.

OTOH, LLL did just change management, so they assigned all the
licenses from UC to the new LLL management consortium, and maybe they
changed how it works for new licenses. The website still says to make
your check payable to Regents of UC

http://www.llnl.gov/ipac/technology/...titles/nec.php

And someday, Gerry Burke is going to retire, and whoever picks it up
from him may not be as willing and helpful to, for instance, recompile
peculiar versions for you.


You'll also, of course, need a Fortran compiler capable of compiling a
multi-threaded application.

That would be if you're doing finegrained parallelism (e.g. using a
multiprocessor BLAS library. Several of the strategies (dividing it
up by frequency) could actually be done by a reasonably simple shell
script/batch file that fires off the executable on different
processors with different input files. For my own NEC on a Cluster
runs, I've done the separate runs on separate machines and merge the
output files in post processing strategy.

Roy Lewallen, W7EL



  #8   Report Post  
Old September 24th 07, 10:42 AM posted to rec.radio.amateur.antenna
external usenet poster
 
First recorded activity by RadioBanter: Jun 2007
Posts: 22
Default Speedup NEC-Engine, using multiple CPU-Cores

It seems to be difficult to realize my wish! Nevertheless I will start
with an simple antenna optimizer using multiple cpu cores without
modifiying the nec-engines (e.g. NEC2 executables). Antenna
optimization can be easily parallelized. Every sort of antenna
parameters (experiment) could run on different processes and therefore
can take advantage of multiple cpu cores.
I will see, how far I can go.
Aziz

  #9   Report Post  
Old September 24th 07, 06:40 PM posted to rec.radio.amateur.antenna
external usenet poster
 
First recorded activity by RadioBanter: Aug 2006
Posts: 88
Default Speedup NEC-Engine, using multiple CPU-Cores

On Sep 23, 9:27 pm, "Frank" wrote:
"Roy Lewallen" wrote in message

...



wrote:
. . .
Whatever you do, you should seriously contemplate basing your work on
the NEC4 engine, rather than the older NEC 2 engine. Sure, you'll
have to pay for it, but it's structured better for what you want to
do, and more accurate to boot.


I was recently told that the non-commercial NEC-4 license doesn't include
source code. I haven't confirmed this, but it's something you should
investigate before purchasing an NEC-4 license if you intend to modify the
source code.


You'll also, of course, need a Fortran compiler capable of compiling a
multi-threaded application.


Roy Lewallen, W7EL


I have a non-commercial license, and it came with NEC 4.1 FORTRAN
source code.

Frank


I'll jump in here without knowing much about the program, but in
general having the Fortran source code doesn't do much to solve your
problem. The function calls to the run-time system is where the
problems will occur. Unless there are versions that support multi-
processors, you are still screwed.

Paul, KD7HB

  #10   Report Post  
Old September 24th 07, 08:23 PM posted to rec.radio.amateur.antenna
external usenet poster
 
First recorded activity by RadioBanter: Jun 2007
Posts: 22
Default Speedup NEC-Engine, using multiple CPU-Cores

Hello Roy,


That would be if you're doing finegrained parallelism (e.g. using a
multiprocessor BLAS library. Several of the strategies (dividing it
up by frequency) could actually be done by a reasonably simple shell
script/batch file that fires off the executable on different
processors with different input files. For my own NEC on a Cluster
runs, I've done the separate runs on separate machines and merge the
output files in post processing strategy.


Using Clusters, remembers me to my past university days. Indeed, I
used up to 20-60 personal computers on the computer centre, to compute
a ray-tracing movie. That was in the 90´th.
How do you handle the process communication? And how do you handle the
results?
There are more reasonably possibilities to speed up antenna
calculation and in special case of course optimizing too. The reason,
why I am want to speed up is, that antenna optimizing takes a lot of
time. I am often using the optimizing tool of 4nec2. It is a very nice
feature of 4nec2, to parameterize the antanne elements using
mathematical formulas. Anyone here, using this feature extensiv?
Aziz

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Seo , Search Engine Optimizer , Seo Search engine Optimization , search engine optimization services, SEO Consulting Morkie Morgan Policy 4 March 9th 07 08:43 AM
Binocular cores available N9NEO Shortwave 6 February 20th 07 12:37 AM
Amidon Cores?? Dale Parfitt Homebrew 1 December 24th 05 07:11 PM
Ferrite Cores [email protected] Shortwave 13 February 6th 05 11:33 PM
TV type Ferrite Cores / Ferrite Cores / Magnetic Longwire Baluns (MLBs) and more RHF Shortwave 0 January 9th 05 02:06 PM


All times are GMT +1. The time now is 08:44 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 RadioBanter.
The comments are property of their posters.
 

About Us

"It's about Radio"

 

Copyright © 2017