sub new {
        my ($cls, $lei) = @_;
        my $self = bless { -wq_ident => 'lei import_kw worker' }, $cls;
-       my ($op_c, $ops) = $lei->workers_start($self, $self->detect_nproc);
+       my $j = $self->detect_nproc // 4;
+       $j = 4 if $j > 4;
+       my ($op_c, $ops) = $lei->workers_start($self, $j);
        $op_c->{ops} = $ops; # for PktOp->event_step
        $self->{lei_sock} = $lei->{sock};
        $lei->{ikw} = $self;
 
        my $self = $cfg->{-lei_note_event} //= do {
                my $wq = bless { lms => $lms }, __PACKAGE__;
                # MUAs such as mutt can trigger massive rename() storms so
-               # use all CPU power available:
+               # use some CPU, but don't overwhelm slower storage, either
                my $jobs = $wq->detect_nproc // 1;
+               $jobs = 4 if $jobs > 4; # same default as V2Writable
                my ($op_c, $ops) = $lei->workers_start($wq, $jobs);
                $lei->wait_wq_events($op_c, $ops);
                note_event_arm_done($lei);