Skip to content

Conversation

@masinter
Copy link
Member

@masinter masinter commented Nov 5, 2025

No description provided.

@masinter
Copy link
Member Author

masinter commented Nov 5, 2025

Maiko is still pegging my machine at 100% CPU usage. I understand you've fixed that but I think the fix should be the default and not some special configuration. IMO, many new users will delete Medley when they see that rather than investigating how to fix it.

This is just an issue of the default configuration ...

(from @blakemcbride)

@pamoroso
Copy link
Contributor

pamoroso commented Nov 5, 2025

I've started using this branch as my daily driver on Linux Mint 22.1 Cinnamon and I'll report any issues.

@nbriggs
Copy link
Contributor

nbriggs commented Nov 5, 2025

I think the (SUBRCALL CAUSE-INTERRUPT) should be removed from BACKGROUND-YIELD before it's made part of the loadup. It seems to add no value, and definitely interferes with debugging anything that actually does go through the interrupt path (like the ethernet interface)

@nbriggs
Copy link
Contributor

nbriggs commented Nov 5, 2025

It's also unclear to me whether it should be in the LISP.SYSOUT, or only in the FULL.SYSOUT.

@pamoroso
Copy link
Contributor

I updated to commit fafb667, still looking good.

@pamoroso
Copy link
Contributor

While I still haven't run into anything broken I'm noticing some subtle lags or misfirings in the reactions of the system to some actions I carry out.

For example, sometimes I click on a permanent menu option and nothing happens or the action is not instantaneous. I experience something similar when clicking the NOTECARDS or ROOMS buttons in the apps sysout: it takes a fraction of a second for the system to initiate loading the application, and at times nothing happens after clicking and one or two more clicks are needed for the system to react. Finally, sometimes characters don't show up immediately when typing at an Exec.

@blakemcbride
Copy link

blakemcbride commented Nov 11, 2025

Interesting. I'm not too surprised, though. If I understand correctly how you're easing the CPU, you're putting in wait states when the CPU is idle. The problem with this is that you'll get the types of delays you're talking about. The fix for the pegged CPU is a kluge. Fiddling with the kluge will never truly solve the problem.

What should happen is that when the system is idle, an infinite wait should occur until an interrupt happens. Keyboard, mouse, and timer (and possibly other) events should cause an interrupt to restart the main loop. This way, there will be no random delays and better reduction of wasted CPU cycles.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants