Transformer compilation

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
just4u_sharath
Premium Member
Premium Member
Posts: 236
Joined: Sun Apr 01, 2007 7:41 am
Location: Michigan

Transformer compilation

Post by just4u_sharath »

When i compile my job after making a small change in parallel transformer, it takes lot of time to compile. I know in the backend a c++ code is running for xformer,but still c++ code generates for whole job. You can say becuase of orchestrare transformer function on server xformer stage. But still it is not clear. Can you please explain why the compile time is more for xformer.
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Simply because it does so much more work. C++ code is NOT generated for the whole job as you assert - all that is generated is an OSH script that is a one-to-one mapping of the stages in your design.

Transformer and Build stages do have to compose, compile and link C++ code which is more time consuming. Further, if you have only one license for the compiler anyone wanting to compile will have to wait for the current user to finish compiling. That will also appear to be a delay in compiling.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Teej
Participant
Posts: 677
Joined: Fri Aug 08, 2003 9:26 am
Location: USA

Post by Teej »

(Forgive me if Ray already mentioned this)Also, if you have multiple transformers, your C compiler's user license may be slowing your compile time. After all, if there's only 1 use license, then only one transformer can be compiled at a time. Usually by simply doubling the license, a dramatic drop in compile time would be visible, especially in a multi-user environment.
AmeyJoshi14
Participant
Posts: 334
Joined: Fri Dec 01, 2006 5:17 am
Location: Texas

Post by AmeyJoshi14 »

Hi Teej,
Are you saying license plays a critical role in reducing compilation time?
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

Yes, he is. But it's not the whole story. Get a second licence and things will improve only all things being equal (you're not loading more compiles onto it). However, single compiles performed in isolation will not improve at all; you'll simply not be using one of the compiler licences.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
just4u_sharath
Premium Member
Premium Member
Posts: 236
Joined: Sun Apr 01, 2007 7:41 am
Location: Michigan

Post by just4u_sharath »

ray.wurlod wrote:Simply because it does so much more work. C++ code is NOT generated for the whole job as you assert - all that is generated is an OSH script that is a one-to-one mapping of the stages in your design.

Transformer and Build stages do have to compose, compile and link C++ code which is more time consuming. Further, if you have only one license for the compiler anyone wanting to compile will have to wait for the current user to finish compiling. That will also appear to be a delay in compiling.
So I can say no c++ code is generated for the job which has no transformer. Only c++ code is generated for a xformer.
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

You can say that. But it would be better to exclude Build stages as well, for these also contain C++ code and therefore require the compiler.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Post Reply