Cobol calling PL1 
Author Message
 Cobol calling PL1

Hi,

    Can anybody post an example of a Cobol program calling a PL1 program?
I'm able to do that but performance wise the program takes too long loading
and unloading the PL1 modules. Is there any way to get around this?

Thanks,
Fabricio



Tue, 10 Jul 2001 03:00:00 GMT  
 Cobol calling PL1
What version and release of PL/I and COBOL are you using - and are you using
LE as your run-time library.  (All of this assuming you are talking about an
IBM mainframe environment).

There were issues about applying later (about 1992) maintenance to Pl/I V1.5
(as I recall) to insure that the correct version of ILBOSTP0 was used by the
PL/I run-time software.  If you are using the LE run-time library, then this
shouldn't be your problem - but other issues might be relevant.

--
Bill Klein
    wmklein at ix dot netcom dot com

Quote:

>Hi,

>    Can anybody post an example of a Cobol program calling a PL1 program?
>I'm able to do that but performance wise the program takes too long loading
>and unloading the PL1 modules. Is there any way to get around this?

>Thanks,
>Fabricio



Wed, 11 Jul 2001 03:00:00 GMT  
 Cobol calling PL1
I'm running this on an IBM mainframe environmente I will check both versions
and post it here later... I assume thay are very current.
Both programs are working but my problem is that this COBOL program is
calling 5 PL1 programs for each record it processes. This call is taking
alot of time. I ran a performance check on the programs and it showed 95
percent used in WAIT time for these modules. So what I want to know is if
there is a way to make these PLI libraries/programs resident.

Thanks

Quote:

>What version and release of PL/I and COBOL are you using - and are you
using
>LE as your run-time library.  (All of this assuming you are talking about
an
>IBM mainframe environment).

>There were issues about applying later (about 1992) maintenance to Pl/I
V1.5
>(as I recall) to insure that the correct version of ILBOSTP0 was used by
the
>PL/I run-time software.  If you are using the LE run-time library, then
this
>shouldn't be your problem - but other issues might be relevant.

>--
>Bill Klein
>    wmklein at ix dot netcom dot com

>>Hi,

>>    Can anybody post an example of a Cobol program calling a PL1 program?
>>I'm able to do that but performance wise the program takes too long
loading
>>and unloading the PL1 modules. Is there any way to get around this?

>>Thanks,
>>Fabricio



Wed, 11 Jul 2001 03:00:00 GMT  
 Cobol calling PL1
Sorry, if I wasn't clear(er) in my earlier post.  The issues related to
maintenance and releases DIRECTLY ties into the speed of switching from
COBOL to PL/I "environments".  It is entirely possible that what is
happening is that both function correctly - but that each time a PL/I
subroutine is called a "new" environment needs to be built (and subsequently
torn down).  This is a known type of problem and can be related to solutions
that IBM provided at later releases.

Question:  Does your shop have Omagemon or some other analyzer tool?  If so,
you (or your systems people) may want to run a test to determine exactly
WHAT routine is in a wait state.  (This may have been what you were
referring to as a "performance check".)  If the routine's name starts with
ILBO or IGZ, then it is probably a COBOL routine; if it starts IBM, then it
is a PL/I routine; if it starts CEE, then it is an LE routine; and if starts
with something else - then it is probably an in-house routine.

Please do keep the newsgroup informed if you find the origin of the problem.

--
Bill Klein
    wmklein at ix dot netcom dot com

Quote:

>I'm running this on an IBM mainframe environmente I will check both
versions
>and post it here later... I assume thay are very current.
>Both programs are working but my problem is that this COBOL program is
>calling 5 PL1 programs for each record it processes. This call is taking
>alot of time. I ran a performance check on the programs and it showed 95
>percent used in WAIT time for these modules. So what I want to know is if
>there is a way to make these PLI libraries/programs resident.

>Thanks



Quote:
>>What version and release of PL/I and COBOL are you using - and are you
>using
>>LE as your run-time library.  (All of this assuming you are talking about
>an
>>IBM mainframe environment).

>>There were issues about applying later (about 1992) maintenance to Pl/I
>V1.5
>>(as I recall) to insure that the correct version of ILBOSTP0 was used by
>the
>>PL/I run-time software.  If you are using the LE run-time library, then
>this
>>shouldn't be your problem - but other issues might be relevant.

>>--
>>Bill Klein
>>    wmklein at ix dot netcom dot com

>>>Hi,

>>>    Can anybody post an example of a Cobol program calling a PL1 program?
>>>I'm able to do that but performance wise the program takes too long
>loading
>>>and unloading the PL1 modules. Is there any way to get around this?

>>>Thanks,
>>>Fabricio



Wed, 11 Jul 2001 03:00:00 GMT  
 Cobol calling PL1

William,

    What I run to check performance is called STROBE.

    Here is a piece of this report...

    #IEP                ** MOST INTENSIVELY EXECUTED PROCEDURES **                  

MODULE   SECTION   LINE     PROCEDURE                         START   % CPU TIME
 NAME     NAME    NUMBER       NAME                            LOC    SOLO TOTAL

.SVC     SVC 008                   PROGRAM MANAGER/LOAD              26.00 26.00
.PL/ILIB IBMBLIIA         IBMBLII1 PLI COMPOSITE MODULE              22.00 22.00
.SVC     SVC 018                   BLDL/FIND                          8.00  8.00
.PL/ILIB IBMBLIIA         IBMBFST  FREE STORAGE                       8.00  8.00
JFBUCAL  .PL/ILIB         IBMBIEP1 INTERLANGUAGE HOUSEKEEP   000000   4.00  4.00
.DB2     DSNVSR           DSNVSR   SUSP/RES/CANCEL SYNCHRON           4.00  4.00
JFBU9AL                                                      000680   2.00  2.00
JFBUAAL                                                      000200   2.00  2.00
JFBR4IP1 JFBR4IP1                                            0029C0   2.00  2.00
JFBR4IP1 JFBR4IP1                                            002840   2.00  2.00

    The module start with IBM... Is there a way to keep those modules loaded?

    If you can give me any directions that would be GREAT!

Regards,
Fabricio

Quote:

>Sorry, if I wasn't clear(er) in my earlier post.  The issues related to
>maintenance and releases DIRECTLY ties into the speed of switching from
>COBOL to PL/I "environments".  It is entirely possible that what is
>happening is that both function correctly - but that each time a PL/I
>subroutine is called a "new" environment needs to be built (and subsequently
>torn down).  This is a known type of problem and can be related to solutions
>that IBM provided at later releases.

>Question:  Does your shop have Omagemon or some other analyzer tool?  If so,
>you (or your systems people) may want to run a test to determine exactly
>WHAT routine is in a wait state.  (This may have been what you were
>referring to as a "performance check".)  If the routine's name starts with
>ILBO or IGZ, then it is probably a COBOL routine; if it starts IBM, then it
>is a PL/I routine; if it starts CEE, then it is an LE routine; and if starts
>with something else - then it is probably an in-house routine.

>Please do keep the newsgroup informed if you find the origin of the problem.

>--
>Bill Klein
>    wmklein at ix dot netcom dot com

>>I'm running this on an IBM mainframe environmente I will check both
>versions
>>and post it here later... I assume thay are very current.
>>Both programs are working but my problem is that this COBOL program is
>>calling 5 PL1 programs for each record it processes. This call is taking
>>alot of time. I ran a performance check on the programs and it showed 95
>>percent used in WAIT time for these modules. So what I want to know is if
>>there is a way to make these PLI libraries/programs resident.

>>Thanks


>>>What version and release of PL/I and COBOL are you using - and are you
>>using
>>>LE as your run-time library.  (All of this assuming you are talking about
>>an
>>>IBM mainframe environment).

>>>There were issues about applying later (about 1992) maintenance to Pl/I
>>V1.5
>>>(as I recall) to insure that the correct version of ILBOSTP0 was used by
>>the
>>>PL/I run-time software.  If you are using the LE run-time library, then
>>this
>>>shouldn't be your problem - but other issues might be relevant.

>>>--
>>>Bill Klein
>>>    wmklein at ix dot netcom dot com

>>>>Hi,

>>>>    Can anybody post an example of a Cobol program calling a PL1 program?
>>>>I'm able to do that but performance wise the program takes too long
>>loading
>>>>and unloading the PL1 modules. Is there any way to get around this?

>>>>Thanks,
>>>>Fabricio



Thu, 12 Jul 2001 03:00:00 GMT  
 Cobol calling PL1

OK,  I think this helps.

One person has already suggested that you put a PL/I "stub" at the top of your application (in other words, a PL/I that does NOTHING but call your COBOL driver).  This might help.

Also, from the fact that all your ILC (Inter-Language CALL) libraries seem to be "IBMxxx" routines, I would GUESS that you don't have LE installed.  Please do follow up on my earlier suggestion and find out what release and version you have available at your shop for
   COBOL
   PL/I
   LE

It may be that simply by STEPLIBing to a newer run-time library, your performance problems will go away.  If not, a recompile (of the PL/I or the COBOL or both) will solve the problem.

Finally,  I know that each of the COBOL programming guides from the mid-80's on has included a section on ILC.  I am fairly certain that the PL/I manuals do to.  Once you know what compiler(s) you are using, check the relevant manuals for a topic on "creating and maintaining a PL/I environment".  (I know where the documentation is on creating a COBOL environment to maintain across returns to PL/I - but I don't know where the documentation is on maintaining the PL/I environment - which seems to be what you need.

--
Bill Klein
    wmklein at ix dot netcom dot com

    William,

        What I run to check performance is called STROBE.

        Here is a piece of this report...

        #IEP                ** MOST INTENSIVELY EXECUTED PROCEDURES **                  

    MODULE   SECTION   LINE     PROCEDURE                         START   % CPU TIME
     NAME     NAME    NUMBER       NAME                            LOC    SOLO TOTAL

    .SVC     SVC 008                   PROGRAM MANAGER/LOAD              26.00 26.00
    .PL/ILIB IBMBLIIA         IBMBLII1 PLI COMPOSITE MODULE              22.00 22.00
    .SVC     SVC 018                   BLDL/FIND                          8.00  8.00
    .PL/ILIB IBMBLIIA         IBMBFST  FREE STORAGE                       8.00  8.00
    JFBUCAL  .PL/ILIB         IBMBIEP1 INTERLANGUAGE HOUSEKEEP   000000   4.00  4.00
    .DB2     DSNVSR           DSNVSR   SUSP/RES/CANCEL SYNCHRON           4.00  4.00
    JFBU9AL                                                      000680   2.00  2.00
    JFBUAAL                                                      000200   2.00  2.00
    JFBR4IP1 JFBR4IP1                                            0029C0   2.00  2.00
    JFBR4IP1 JFBR4IP1                                            002840   2.00  2.00

        The module start with IBM... Is there a way to keep those modules loaded?

        If you can give me any directions that would be GREAT!

    Regards,
    Fabricio


    >Sorry, if I wasn't clear(er) in my earlier post.  The issues related to
    >maintenance and releases DIRECTLY ties into the speed of switching from
    >COBOL to PL/I "environments".  It is entirely possible that what is
    >happening is that both function correctly - but that each time a PL/I
    >subroutine is called a "new" environment needs to be built (and subsequently
    >torn down).  This is a known type of problem and can be related to solutions
    >that IBM provided at later releases.
    >
    >Question:  Does your shop have Omagemon or some other analyzer tool?  If so,
    >you (or your systems people) may want to run a test to determine exactly
    >WHAT routine is in a wait state.  (This may have been what you were
    >referring to as a "performance check".)  If the routine's name starts with
    >ILBO or IGZ, then it is probably a COBOL routine; if it starts IBM, then it
    >is a PL/I routine; if it starts CEE, then it is an LE routine; and if starts
    >with something else - then it is probably an in-house routine.
    >
    >Please do keep the newsgroup informed if you find the origin of the problem.
    >
    >--
    >Bill Klein
    >    wmklein at ix dot netcom dot com

    >>I'm running this on an IBM mainframe environmente I will check both
    >versions
    >>and post it here later... I assume thay are very current.
    >>Both programs are working but my problem is that this COBOL program is
    >>calling 5 PL1 programs for each record it processes. This call is taking
    >>alot of time. I ran a performance check on the programs and it showed 95
    >>percent used in WAIT time for these modules. So what I want to know is if
    >>there is a way to make these PLI libraries/programs resident.
    >>
    >>Thanks


    >>>What version and release of PL/I and COBOL are you using - and are you
    >>using
    >>>LE as your run-time library.  (All of this assuming you are talking about
    >>an
    >>>IBM mainframe environment).
    >>>
    >>>There were issues about applying later (about 1992) maintenance to Pl/I
    >>V1.5
    >>>(as I recall) to insure that the correct version of ILBOSTP0 was used by
    >>the
    >>>PL/I run-time software.  If you are using the LE run-time library, then
    >>this
    >>>shouldn't be your problem - but other issues might be relevant.
    >>>
    >>>--
    >>>Bill Klein
    >>>    wmklein at ix dot netcom dot com

    >>>>Hi,
    >>>>
    >>>>    Can anybody post an example of a Cobol program calling a PL1 program?
    >>>>I'm able to do that but performance wise the program takes too long
    >>loading
    >>>>and unloading the PL1 modules. Is there any way to get around this?
    >>>>
    >>>>Thanks,
    >>>>Fabricio
    >>>>
    >>>>
    >>>>
    >>>
    >>>
    >>
    >>
    >
    >



Thu, 12 Jul 2001 03:00:00 GMT  
 Cobol calling PL1
The ugly solution to this is to write a PL/I main program which calls your
COBOL program (and passes the PARM field, if applicable). This will cause
COBOL to run "in the PL/I environment", and dispense with all of the PL/I
environment setup & teardown.

William,

    What I run to check performance is called STROBE.

    Here is a piece of this report...

    #IEP                ** MOST INTENSIVELY EXECUTED PROCEDURES **

MODULE   SECTION   LINE     PROCEDURE                         START   % CPU
TIME
NAME     NAME    NUMBER       NAME                            LOC    SOLO
TOTAL

.SVC     SVC 008                   PROGRAM MANAGER/LOAD              26.00
26.00
.PL/ILIB IBMBLIIA         IBMBLII1 PLI COMPOSITE MODULE              22.00
22.00
.SVC     SVC 018                   BLDL/FIND                          8.00
8.00
.PL/ILIB IBMBLIIA         IBMBFST  FREE STORAGE                       8.00
8.00
JFBUCAL  .PL/ILIB         IBMBIEP1 INTERLANGUAGE HOUSEKEEP   000000   4.00
4.00
.DB2     DSNVSR           DSNVSR   SUSP/RES/CANCEL SYNCHRON           4.00
4.00
JFBU9AL                                                      000680   2.00
2.00
JFBUAAL                                                      000200   2.00
2.00
JFBR4IP1 JFBR4IP1                                            0029C0   2.00
2.00
JFBR4IP1 JFBR4IP1                                            002840   2.00
2.00

    The module start with IBM... Is there a way to keep those modules
loaded?

    If you can give me any directions that would be GREAT!

Regards,
Fabricio

Quote:

>Sorry, if I wasn't clear(er) in my earlier post.  The issues related to
>maintenance and releases DIRECTLY ties into the speed of switching from
>COBOL to PL/I "environments".  It is entirely possible that what is
>happening is that both function correctly - but that each time a PL/I
>subroutine is called a "new" environment needs to be built (and
subsequently
>torn down).  This is a known type of problem and can be related to
solutions
>that IBM provided at later releases.

>Question:  Does your shop have Omagemon or some other analyzer tool?  If
so,
>you (or your systems people) may want to run a test to determine exactly
>WHAT routine is in a wait state.  (This may have been what you were
>referring to as a "performance check".)  If the routine's name starts with
>ILBO or IGZ, then it is probably a COBOL routine; if it starts IBM, then it
>is a PL/I routine; if it starts CEE, then it is an LE routine; and if
starts
>with something else - then it is probably an in-house routine.

>Please do keep the newsgroup informed if you find the origin of the
problem.

>--
>Bill Klein
>    wmklein at ix dot netcom dot com

>>I'm running this on an IBM mainframe environmente I will check both
>versions
>>and post it here later... I assume thay are very current.
>>Both programs are working but my problem is that this COBOL program is
>>calling 5 PL1 programs for each record it processes. This call is taking
>>alot of time. I ran a performance check on the programs and it showed 95
>>percent used in WAIT time for these modules. So what I want to know is if
>>there is a way to make these PLI libraries/programs resident.

>>Thanks


>>>What version and release of PL/I and COBOL are you using - and are you
>>using
>>>LE as your run-time library.  (All of this assuming you are talking about
>>an
>>>IBM mainframe environment).

>>>There were issues about applying later (about 1992) maintenance to Pl/I
>>V1.5
>>>(as I recall) to insure that the correct version of ILBOSTP0 was used by
>>the
>>>PL/I run-time software.  If you are using the LE run-time library, then
>>this
>>>shouldn't be your problem - but other issues might be relevant.

>>>--
>>>Bill Klein
>>>    wmklein at ix dot netcom dot com

>>>>Hi,

>>>>    Can anybody post an example of a Cobol program calling a PL1
program?
>>>>I'm able to do that but performance wise the program takes too long
>>loading
>>>>and unloading the PL1 modules. Is there any way to get around this?

>>>>Thanks,
>>>>Fabricio



Fri, 13 Jul 2001 03:00:00 GMT  
 Cobol calling PL1
That is exactly what I did and it worked!

Thanks you guys...

Quote:

> The ugly solution to this is to write a PL/I main program which calls your
> COBOL program (and passes the PARM field, if applicable). This will cause
> COBOL to run "in the PL/I environment", and dispense with all of the PL/I
> environment setup & teardown.


> William,

>     What I run to check performance is called STROBE.

>     Here is a piece of this report...

>     #IEP                ** MOST INTENSIVELY EXECUTED PROCEDURES **

> MODULE   SECTION   LINE     PROCEDURE                         START   % CPU
> TIME
> NAME     NAME    NUMBER       NAME                            LOC    SOLO
> TOTAL

> .SVC     SVC 008                   PROGRAM MANAGER/LOAD              26.00
> 26.00
> .PL/ILIB IBMBLIIA         IBMBLII1 PLI COMPOSITE MODULE              22.00
> 22.00
> .SVC     SVC 018                   BLDL/FIND                          8.00
> 8.00
> .PL/ILIB IBMBLIIA         IBMBFST  FREE STORAGE                       8.00
> 8.00
> JFBUCAL  .PL/ILIB         IBMBIEP1 INTERLANGUAGE HOUSEKEEP   000000   4.00
> 4.00
> .DB2     DSNVSR           DSNVSR   SUSP/RES/CANCEL SYNCHRON           4.00
> 4.00
> JFBU9AL                                                      000680   2.00
> 2.00
> JFBUAAL                                                      000200   2.00
> 2.00
> JFBR4IP1 JFBR4IP1                                            0029C0   2.00
> 2.00
> JFBR4IP1 JFBR4IP1                                            002840   2.00
> 2.00

>     The module start with IBM... Is there a way to keep those modules
> loaded?

>     If you can give me any directions that would be GREAT!

> Regards,
> Fabricio


> >Sorry, if I wasn't clear(er) in my earlier post.  The issues related to
> >maintenance and releases DIRECTLY ties into the speed of switching from
> >COBOL to PL/I "environments".  It is entirely possible that what is
> >happening is that both function correctly - but that each time a PL/I
> >subroutine is called a "new" environment needs to be built (and
> subsequently
> >torn down).  This is a known type of problem and can be related to
> solutions
> >that IBM provided at later releases.

> >Question:  Does your shop have Omagemon or some other analyzer tool?  If
> so,
> >you (or your systems people) may want to run a test to determine exactly
> >WHAT routine is in a wait state.  (This may have been what you were
> >referring to as a "performance check".)  If the routine's name starts with
> >ILBO or IGZ, then it is probably a COBOL routine; if it starts IBM, then it
> >is a PL/I routine; if it starts CEE, then it is an LE routine; and if
> starts
> >with something else - then it is probably an in-house routine.

> >Please do keep the newsgroup informed if you find the origin of the
> problem.

> >--
> >Bill Klein
> >    wmklein at ix dot netcom dot com

> >>I'm running this on an IBM mainframe environmente I will check both
> >versions
> >>and post it here later... I assume thay are very current.
> >>Both programs are working but my problem is that this COBOL program is
> >>calling 5 PL1 programs for each record it processes. This call is taking
> >>alot of time. I ran a performance check on the programs and it showed 95
> >>percent used in WAIT time for these modules. So what I want to know is if
> >>there is a way to make these PLI libraries/programs resident.

> >>Thanks


> >>>What version and release of PL/I and COBOL are you using - and are you
> >>using
> >>>LE as your run-time library.  (All of this assuming you are talking about
> >>an
> >>>IBM mainframe environment).

> >>>There were issues about applying later (about 1992) maintenance to Pl/I
> >>V1.5
> >>>(as I recall) to insure that the correct version of ILBOSTP0 was used by
> >>the
> >>>PL/I run-time software.  If you are using the LE run-time library, then
> >>this
> >>>shouldn't be your problem - but other issues might be relevant.

> >>>--
> >>>Bill Klein
> >>>    wmklein at ix dot netcom dot com

> >>>>Hi,

> >>>>    Can anybody post an example of a Cobol program calling a PL1
> program?
> >>>>I'm able to do that but performance wise the program takes too long
> >>loading
> >>>>and unloading the PL1 modules. Is there any way to get around this?

> >>>>Thanks,
> >>>>Fabricio



Sat, 14 Jul 2001 03:00:00 GMT  
 
 [ 8 post ] 

 Relevant Pages 

1. Cobol calling PL1

2. COBOL calling C calling COBOL

3. COBOL calling C calling COBOL

4. tso rexx calls cobol calls cobol -> splat

5. PL1 for Linux / PL1 for Win95?

6. wanted: PL1 to C xlator or PL1 BNF

7. FINAL CALL FOR VOTES: comp.lang.pl1

8. *****PL1 WITH COBOL NEEDED IN CHICAGO FT*****

9. pl1 to cobol converter

10. CICS/COBOL/PL1/DB2/Y2K positions in NY,NJ

11. UK NORTH WEST - PL1/COBOL VACANCIES

12. PL1, CICS. DB2/COBOL, ANALYST/PROGRAMMER/WILTS

 

 
Powered by phpBB® Forum Software