Imagemagick wand use only one single CPU

I have a multi thread app (8 threads) on a multi core machine (8 cpu). each thread is doing in parallel

NewMagickWand
MagickReadImage
MagickResizeImage
DestroyMagickWand

but imageMagick use only ONE CPU instead of 8 ! Even if I setup each thread to use a dedicated CPU with SetThreadAffinityMask ImageMagick still use always the same single CPU

How to make magickWand to use all the available CPU ? I m on windows and using imagemagick 7. Is their any way to optimize magickwand to work in a multithread environment (inside a web server app) ?

NOTE:

below the code of a demo app (in pascal)

uses ALFiles,
     ALImageMagick;

procedure _resizeImage;
var aWand: PMagickWand;
begin
  aWand := ALImageMagickLib.NewMagickWand;
  try
    if ALImageMagickLib.MagickReadImage(aWand, pansiChar(ALGetModulePath + 'sample.jpg')) <> MagickTrue then RaiseLastWandError(aWand);
    if (ALImageMagickLib.MagickResizeImage(aWand, 640, 480, LanczosFilter) <> MagickTrue) then RaiseLastWandError(aWand);
  finally
    ALImageMagickLib.DestroyMagickWand(aWand);
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var i: integer;
begin

  for i := 0 to 8 do begin
    TThread.CreateAnonymousThread(
      procedure
      begin
        while True do
          _resizeImage
      end).Start;
  end;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  alCreateImageMagickLibrary(string(ALGetModulePath) + 'imagemagick');
end;

and the graph of the CPU utilization :

enter image description here

also

convert -version
Version: ImageMagick 7.0.7-23 Q16 x64 2018-02-18 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2015 ImageMagick Studio LLC
License: http://www.imagemagick.org/script/license.php
Visual C++: 180040629
Features: Cipher DPC Modules OpenMP
Delegates (built-in): bzlib cairo flif freetype gslib heic jng jp2 jpeg lcms lqr openexr pangocairo png ps raw rsvg tiff webp xml zlib

and

convert -list resource
Resource limits:
  Width: 214.748MP
  Height: 214.748MP
  List length: 18.4467EP
  Area: 17.1373GP
  Memory: 7.98018GiB
  Map: 15.9604GiB
  Disk: unlimited
  File: 1536
  Thread: 8
  Throttle: 0
  Time: unlimited

I discover something :

On my computer I have 4 core and 8 Logical processors

in the default policy.xml the row

<!-- <policy domain="resource" name="thread" value="4"/> -->

is commented, but when i do

convert -list resource
Resource limits:
Width: 214.748MP
Height: 214.748MP
List length: 18.4467EP
Area: 17.1373GP
Memory: 7.98018GiB
Map: 15.9604GiB
Disk: unlimited
File: 1536
Thread: 8
Throttle: 0
Time: unlimited

we saw that imageMagick is configured to use Thread: 8 that look like the number of logical processor in my computer

When imagemagick is configured to use 8 Threads (default) => only one core will be used!

enter image description here

When imagemagick is configured to use 4 Threads (updading policy.xml) => ALL the core will be used!

enter image description here

any idea why ?