[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

2440.0. "MCC_THREAD_TEST_ALERT()" by CCIIS1::ROGGEBAND (_ �hili��e _) Thu Feb 27 1992 06:52

Hello all,

Context : DECmcc T1.2.3 on Ultrix.

I have just been experimenting with a compute-intensive AM. For a rather long
time, it loops on computation and at the end of each loop, it calls
mcc_thread_test_alert() to give the kernel a chance to reschedule other
threads.

It would seem that mcc_thread_test_alert does not run the scheduler, as we
in the same loop and all other requests which should dispatch to that AM just
hang.

We inserted some tracepoints (fancy word for printf) to follow what was going
on. Adding a mcc_timer_wait in the loop allowed us to work around the problem
as other threads were then correctly started.

Is the fact that the scheduler did not run a T1.2.3 bug ? If so, is it fixed
in T1.2.4? (I haven't upgraded yet because of some disk space problems....)

Subsidiary question : Has anyone used Ultrix Message Queues in DECmcc
modules? (msg_send & receive ) ? Do you know if they are likely to block
the MM process?

Any help will be appreciated.

Amicalement,

Philippe.
    
T.RTitleUserPersonal
Name
DateLines
2440.1TOOK::SWISTJim Swist LKG2-2/T2 DTN 226-7102Thu Feb 27 1992 10:397
    mcc_thread_test_alert won't enter the scheduler, use mcc_thread_yield
    instead.
    
    Also, since CMA timeslices you may not need to do what you are doing
    since long running threads will get pre-empted to run other ready
    threads.