Server "msg_to_host" out of control on some projects + how it works?

Message boards : Questions and problems : Server "msg_to_host" out of control on some projects + how it works?
Message board moderation

To post messages, you must log in.

AuthorMessage
Profile Joseph Stateson
Volunteer tester
Avatar

Send message
Joined: 27 Jun 08
Posts: 641
United States
Message 94525 - Posted: 24 Dec 2019, 21:40:41 UTC
Last modified: 24 Dec 2019, 21:48:11 UTC

I am getting 1000's of messages from Einstein and 100's from GPUgrid. The event log only holds 2000 and right now the log starts at 2081 and ends at 4081.

My guess is 1,500 of " Einstein … boinc will delete file xxx (no longer needed)"
and about 500 from GPUgrid telling me in no uncertain terms there is no project work available.

What is missing from the event log? All the debugging stuff I wanted to look at to spot a problem that was in the first 2000 or so messages I cannot see anymore.

Looking at module sched_locality I see
        sprintf(buf, "BOINC will delete file %s (no longer needed)", fi.name);
        g_reply->insert_message(buf, "low");

That is server code, not client, but there is a filter: "low" and also the project "Einstein"

The client handles those message as
    // show messages from server
    //
    bool got_notice = false;
    for (i=0; i<sr.messages.size(); i++) {
        USER_MESSAGE& um = sr.messages[i];
        int prio = MSG_INFO;
        if (!strcmp(um.priority.c_str(), "notice")) {
            prio = MSG_SCHEDULER_ALERT;
            got_notice = true;
        }
        msg_printf(project, prio, "%s", um.message.c_str());
    }


The only msg filtering is to send the notices to the notice dialog box and let the event log show all the rest ie: "low". (I did not see a "high" but there might be one)

A) Feature request: This message handler should do some filtering.

Some ideas

1. Have project put additional classes in the message such as "ignorable" in addition to "low" and "high" assuming that exists. The client can have a debug flag <show_ignorable>1</show_ignorable> , etc. I suspect the projects have a lot of inertia and this wont happen

2. Mod the client: Count number of similar message such as "Einstein" + "no longer needed" and only display the first message and if a subsequent message from Einstein changes, then print the total "CNT" of similar massage along with the new message. This may or may not work with GPUgrid as they display 5 lines of messages all stating what projects have no work available. A filter such "low" + "gpugrid" would work

If staff thinks any of this is useful I can code it (#2) up and present it as a fix to an "issue" Otherwise I plan to drop any "low" on my "special mod" which will be put on GitHub.

B) Is there sample code that shows how to send these messages to the client? I looked at "boinccmd --help" and did not see a "send message to client:" The reason I bring this up is that I have a python script that reads temperatures from the GPU and the CPU and if I receive the NVidia driver request "lost GPU: please reboot system" it would be nice to send that message and have it show up either at BM or BT. Currently I issue an order to stop all GPU work using boinccmd and send a text message to my phone. This is Linux, not windows of course.
ID: 94525 · Report as offensive
Profile Joseph Stateson
Volunteer tester
Avatar

Send message
Joined: 27 Jun 08
Posts: 641
United States
Message 94551 - Posted: 25 Dec 2019, 7:35:09 UTC - in response to Message 94525.  

Fixed and tested under Ubuntu and Win10

cc_config.xml looks like this:
<exclude_proj_msg>
<proj_name>Einstein@Home</proj_name>
<msg_type></msg_type>
<msg_content>no longer needed</msg_content>
</exclude_proj_msg>

<exclude_proj_msg>
<proj_name>GPUGRID</proj_name>
<msg_type></msg_type>
<msg_content>No tasks</msg_content>
</exclude_proj_msg>

<exclude_proj_msg>
<proj_name>GPUGRID</proj_name>
<msg_type></msg_type>
<msg_content>no tasks available</msg_content>
</exclude_proj_msg>


I print one messages up and never print anymore.
12/25/2019 1:08:50 AM	Not showing project messsage from Einstein@Home of type "ALL" with content "no longer needed"	
12/25/2019 1:08:50 AM	Not showing project messsage from GPUGRID of type "ALL" with content "No tasks"	
12/25/2019 1:08:50 AM	Not showing project messsage from GPUGRID of type "ALL" with content "no tasks available"	
12/25/2019 1:08:50 AM	Config: use all coprocessors	
...
12/25/2019 1:23:46 AM	For project GPUGRID,  excluded this message: "No tasks sent" of priority "low"	
12/25/2019 1:23:46 AM	For project GPUGRID,  excluded this message: "Project has no tasks available" of priority "low"	

ID: 94551 · Report as offensive

Message boards : Questions and problems : Server "msg_to_host" out of control on some projects + how it works?

Copyright © 2024 University of California.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.