<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: DECforms, IA64, multithread in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241202#M27303</link>
    <description>&lt;BR /&gt;Ah! Hoff found the 2003 DECforms V3.3 Release Notes, which mention FORMS$SUPPRESS_DECTHREADS online at:&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://www.s-and-b.ru/syshlp/forms033.release_notes" target="_blank"&gt;http://www.s-and-b.ru/syshlp/forms033.release_notes&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;See details below. Thanks Hoff!&lt;BR /&gt;&lt;BR /&gt;/enable=upcall should also help, but because then DECthreads 'knows' what is going on and does not need a timer based scheduler. But as you indicate I have also seen ACCVIO and OPCCUS program crashed. Details escaped me for now.&lt;BR /&gt;&lt;BR /&gt;Hein&lt;BR /&gt;&lt;BR /&gt;---------&lt;BR /&gt;o  If DECforms detects DECthreads in the process when loading or during processing, it will take an alternative code path and make use of threading routines. &lt;BR /&gt;This however, places restrictions (refer to the "General Restrictions" section below) on how an application can behave when making DECforms requests. &lt;BR /&gt;When those restrictions are not adhered to, the FORMS$BLOCKED_BY_THREAD message is returned. If it is not necessary for the application to run in a "threaded manner", the user can define the logical FORMS$SUPPRESS_DECTHREADS to "1" or "Y" before the application is started. This will force DECforms to behave in a non-threaded manner and therefore not place any extra restrictions on request calls.&lt;BR /&gt;-------</description>
    <pubDate>Wed, 26 May 2010 13:37:53 GMT</pubDate>
    <dc:creator>Hein van den Heuvel</dc:creator>
    <dc:date>2010-05-26T13:37:53Z</dc:date>
    <item>
      <title>DECforms, IA64, multithread</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241200#M27301</link>
      <description>We ported our DECforms Application from AXP to IA64. The Application is written in PASCAL and use the ADABAS database from SAG on IA64. The AXP Version is stable since many years. With IA64 we had a Problem when the Application is linked /threads_enable=(multi,upcall). Our App. is not multithreaded, but for better performance SAG recommendes the Linker qualifier /threads_enable. The Problem is an ACCVIO resp. Forms$_ioerror in forms$enable(). When we link the App. without /threads_enable we had no problem, but the performance is not acceptable. The abnormal end (linked with /threads_enabled) doesn't occur when forms$trace is enabled.</description>
      <pubDate>Wed, 26 May 2010 09:14:15 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241200#M27301</guid>
      <dc:creator>Klaus Heim</dc:creator>
      <dc:date>2010-05-26T09:14:15Z</dc:date>
    </item>
    <item>
      <title>Re: DECforms, IA64, multithread</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241201#M27302</link>
      <description>two things&lt;BR /&gt;&lt;BR /&gt;1) Be sure to get the update DECforms code. The original port causes far too many alignment faults&lt;BR /&gt;&lt;BR /&gt;2) That performance problem, what were its characteristics? Did you see excessive MPsync and when drilling down with SPL TRACE was the SCHED spinlock HOT, followed closely by TIMER?&lt;BR /&gt;&lt;BR /&gt;DECforms, when linked with a DECthreads component, will put itself in a SCHED OTHER thread. This will cause a timer interrupt 10 times per second, per process, to see if all threads are still being treated fairly only to find that no thread is using any CPU(most of the time).&lt;BR /&gt;You can stop that behavior with:&lt;BR /&gt;&lt;BR /&gt;$ DEFINE [/SYSTEM] FORMS$SUPPRESS_DECTHREADS Y&lt;BR /&gt;&lt;BR /&gt;I found the logical using STRINGS on FORMS$MANAGER, and Ian found a old release note documenting it, but I can not find that just now.&lt;BR /&gt;The current release note does not mention it&lt;BR /&gt;&lt;A href="http://h71000.www7.hp.com/doc/82final/decforms/forms_release_notes.pdf" target="_blank"&gt;http://h71000.www7.hp.com/doc/82final/decforms/forms_release_notes.pdf&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;This is NOT Itanium specific and has the potential to significantly hurt performance when there are hundreds of DECforms sessions enabled. &lt;BR /&gt;Ballpark? 4 GS1280 CPUs for 1000 users just staring at a form/field.&lt;BR /&gt;&lt;BR /&gt;Good luck,&lt;BR /&gt;Hein van den Heuvel&lt;BR /&gt;HvdH Performance Engineering.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 26 May 2010 12:25:48 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241201#M27302</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2010-05-26T12:25:48Z</dc:date>
    </item>
    <item>
      <title>Re: DECforms, IA64, multithread</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241202#M27303</link>
      <description>&lt;BR /&gt;Ah! Hoff found the 2003 DECforms V3.3 Release Notes, which mention FORMS$SUPPRESS_DECTHREADS online at:&lt;BR /&gt;&lt;BR /&gt;&lt;A href="http://www.s-and-b.ru/syshlp/forms033.release_notes" target="_blank"&gt;http://www.s-and-b.ru/syshlp/forms033.release_notes&lt;/A&gt;&lt;BR /&gt;&lt;BR /&gt;See details below. Thanks Hoff!&lt;BR /&gt;&lt;BR /&gt;/enable=upcall should also help, but because then DECthreads 'knows' what is going on and does not need a timer based scheduler. But as you indicate I have also seen ACCVIO and OPCCUS program crashed. Details escaped me for now.&lt;BR /&gt;&lt;BR /&gt;Hein&lt;BR /&gt;&lt;BR /&gt;---------&lt;BR /&gt;o  If DECforms detects DECthreads in the process when loading or during processing, it will take an alternative code path and make use of threading routines. &lt;BR /&gt;This however, places restrictions (refer to the "General Restrictions" section below) on how an application can behave when making DECforms requests. &lt;BR /&gt;When those restrictions are not adhered to, the FORMS$BLOCKED_BY_THREAD message is returned. If it is not necessary for the application to run in a "threaded manner", the user can define the logical FORMS$SUPPRESS_DECTHREADS to "1" or "Y" before the application is started. This will force DECforms to behave in a non-threaded manner and therefore not place any extra restrictions on request calls.&lt;BR /&gt;-------</description>
      <pubDate>Wed, 26 May 2010 13:37:53 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241202#M27303</guid>
      <dc:creator>Hein van den Heuvel</dc:creator>
      <dc:date>2010-05-26T13:37:53Z</dc:date>
    </item>
    <item>
      <title>Re: DECforms, IA64, multithread</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241203#M27304</link>
      <description>Thank you for this tip. I will test it tomorrow and report the result.</description>
      <pubDate>Wed, 26 May 2010 16:34:36 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241203#M27304</guid>
      <dc:creator>Klaus Heim</dc:creator>
      <dc:date>2010-05-26T16:34:36Z</dc:date>
    </item>
    <item>
      <title>Re: DECforms, IA64, multithread</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241204#M27305</link>
      <description>The performance problem is as follows:&lt;BR /&gt;&lt;BR /&gt;When we use /nothreads_enable the ADABAS kernel does not use threads. With /threads_enabled ADABAS uses threads for local an remote database access. The IO throughput is significantly better.&lt;BR /&gt;&lt;BR /&gt;When we started our application on Alpha is faster than on IA64. After the hint from SAG (with /threads_enabled) the performance on IA64 is 1.5 to 2 times faster than Alpha.</description>
      <pubDate>Thu, 27 May 2010 05:43:11 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241204#M27305</guid>
      <dc:creator>Klaus Heim</dc:creator>
      <dc:date>2010-05-27T05:43:11Z</dc:date>
    </item>
    <item>
      <title>Re: DECforms, IA64, multithread</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241205#M27306</link>
      <description>I defined the logical at 27. May and I believe that the problem is solved. Thank you very much for this hint.&lt;BR /&gt;&lt;BR /&gt;We have also reported the problem to HP support a few months ago, but we got no help until today.</description>
      <pubDate>Mon, 31 May 2010 05:30:48 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241205#M27306</guid>
      <dc:creator>Klaus Heim</dc:creator>
      <dc:date>2010-05-31T05:30:48Z</dc:date>
    </item>
    <item>
      <title>Re: DECforms, IA64, multithread</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241206#M27307</link>
      <description>The solution is to define the logical forms$suppress_decthreads.</description>
      <pubDate>Mon, 31 May 2010 05:33:15 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/decforms-ia64-multithread/m-p/5241206#M27307</guid>
      <dc:creator>Klaus Heim</dc:creator>
      <dc:date>2010-05-31T05:33:15Z</dc:date>
    </item>
  </channel>
</rss>

