Accéder au contenu.
Menu Sympa

starpu-devel - [starpu-devel] Creating thread partitions

Objet : Developers list for StarPU

Archives de la liste

[starpu-devel] Creating thread partitions


Chronologique Discussions 
  • From: Doru Adrian Thom Popovici <dtpopovici@lbl.gov>
  • To: starpu-devel@inria.fr
  • Subject: [starpu-devel] Creating thread partitions
  • Date: Tue, 28 Nov 2023 23:52:59 -0800
  • Authentication-results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=dtpopovici@lbl.gov; spf=Pass smtp.mailfrom=dtpopovici@lbl.gov; spf=None smtp.helo=postmaster@mail-yw1-f181.google.com
  • Ironport-data: A9a23:RSmlsKubX1mV8954Cjpm0uqlJ+fnVLJaMUV32f8akzHdYApBsoF/q tZmKTyFa63YNDP2KdgjPojgpkxQupOHyIQwTgBt+y0xFHxEgMeUXt7xwmXYb3rDdJWbJK5Ex 5xDMYeYdJhcolv0/ErF3m3J9CEkvU2wbuOgTrSCYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj7yyHlEAbNNwVcbCRMt8pvlDs15K6p4WpC7wRnDRx2lAa2e0c9XMp3yZ6ZdCOQrrl8RoaSW +vFxbelyWLVlz9F5gSNz94X2mVTKlLjFVDmZkh+A8BOsTAezsAG6ZvXAdJHAathZ5plqPgqo DlFncTYpQ7EpcQgksxFO/VTO3kW0aGrZNYriJVw2CCe5xSuTpfi/xlhJF1nLYYC27t6PWhX7 /Y0CW1Uck29me3jldpXSsE07igiBMziPYdaq245iD+AXa9gTpfETKHHo9Rf2V/chOgURaeYN 5dfMGA/Kk2QOnWjOX9PYH46tOu0nn7ndCNZo1O9oaAzpWfU0mSd1ZCyaoqFIIDTH625mG64j XjZ8E7gBisIF+26zwiHqVuzuLPAyHaTtIU6T+DhrqE73jV/3Fc7EwEfT0Om5PW0lEO6c8lOL lQdvCsot6k7skKxJuQRRDW9qX+A+w8DAp9eSr1jrg6KzaXQ7kCSAW1soiN9hMIOqJ4mTiYLi 1K1lsrzDxBO7eSJFEyD+eLBxd+tAhQ9IWgHbC4CaAIK5dj/vY0+5i4jqP4zT8ZZafWlRlnNL yC2kcQou1kEYSc2O0iT+FnGh3e9ucGMQFdlv0PYWWWq6g4/b4mgD2BJ1bQ5xacYRGp6ZgDe1 JThpyR4xL5UZX1qvHLXKNjh5Jnzu5643MT02DaD5aUJ+TW34GKEdotN+jx4L0oBGp9bIWawM RGJ51gKuMA70J6WgUlfM93Z5yMCnfeIKDgZfqmLBjazSsEtKlbaoXw0DaJu9z28zxNz+U3AB XtrWZ3xVC5FWPoPIMueSOAa3rsmjiE4ziW7eHwI50XP7FZqX1bMEe1tGALWMIgRtfrYyC2Lq Yo3H5XRkH13DrauChQ7BKZJcjjm21BgVc6owyGWH8bfSjdb9JYJUaGAnOx4INU8z8y4VI7gp xmAZ6OR83Kn7VWvFOlAQioLhGrHDMgh/0EodzchJ0ip0HUFaIOipvVXPZgucLVtsKQpwfdoR rNXM4+NE9ZeeAThoj49VJjaqJA9VRKJgQnVATGpTgJidLFdRivI2OTeQC3RyAc0ABCK6PQO+ 4+b6luDQL4oZRhTM8LNWff+k3KzpSc8ncxxbWvpI/5SWl7d9Zd3GXag1N42PMA+BhHRzRSK1 wutIEk5pMuch6QX4dX2laS/gIPxKNRHH21eBHj90ba6EQL471iT69ZMf8jQdA+MSV6u3rupY Ntk6s3VMdoFrQ5siJV9GbM69pAOzYLjiJECxzs1AUiRSUqgD45hBXy03cNvkKlp7Z0BsCuUX nO/wPVrCY+rCujETmFIfBEEa96d3846gjPRtPQ5AHvr7R9NoYaobx9gAAmuugd8cp1OL4IX8 cUwspU36iu+qCYQHPSosyR2z1mIf1s8C/gJl5dCG4L6qBsZ+ncba7zmNyLGypWuadJND0oUH gGplJfy37Rx+06TXEcwRF7s3PVcj6sgoBpl7kEPDHXXl8vnhs0Y5gxw8zM2RCt31TFC3/x/O 0lwFkhPPa7V1SxZtMtCeGGNGg96GxyS/HLq+WYJjGH0S0qJVHTHCW8AZda240ES9lxDcghh/ L23zHjvVRDodprT2hQedFFEqfu5a/BM7SzHxd6aGvqaE6kAYTbKhrGkYUwKoUDFBeIznEj2m vl4zt1vaKHUNT8inINjMtO0jY8vcRGjIHBOZdpD/6lTRGHVR2yU6Ai0cku0fptAGuzO/UqGE PdRH8NoVSml9SOwvzseVL8tIbh1oaYT3+A8WIjXfEwIj7jOiQBSksP01jP/j2oVUdlRgZ4DC ofORQmjTE2Up1VpwlHokucVG1CFceElZRL91t+b6O8mNYwOm8AyfFAQ0ombhWS0Mgxm9S26p AnoPvLa3cF++4ZBw67XT6NJXVSyI/zOSdXSoRySsstPX/zLI8zhpwMYkXi5HgV0bJ86ecV7q qSJi/HzhHj6hbcRV3vIvaWBG41ix9SAbMAOPu3ZdHBlzDa/Auny6B49ykWEAJ1ukuIFwPK4R gG9OfCCRfRMV/hznHRqOjVjSTADAKHKb4DllyO3j9KILjM/iQXnDteWxUXFXFFhVB0jGsPBU 1fvmvOU+NpngpxGB0YEC9FYEpZIGgLfdpV8ReLhlwuzLzeOuUyDiIvAhBB7yDDsC1u4KujYz 6/BZCDDcEWVhPmV4vBf6oB8h0hCRjI1y+w9ZVkU9NNKmii3RjxOZ/gUNZIdTIpYiGru3ZX/f yvAd3YmFT67ZzlfbBHg+572a29z3ADV1gvRfVTFPn94ahtawKuFCbplszZ/ujJ4I2u6iu6gL t4a9zv7OR3ZLlSFgwoMzqTTvAul7qqyKrE0FYTVl8b2RRkZH93mEVR/SRFVW3Wv/97lzS32y KtceYyAaEWxTQj+FtgIl7u53v0GlGuH8gjEphtjDDoSV0t3AQGAJDDC1znP74A+
  • Ironport-hdrordr: A9a23:27fE/qgJxU2IOO42NOHkkxYMnXBQXtcji2hC6mlwRA09TyX4rb HIoB1/73XJYVkqKRIdcLy7WJVoIkm8yXcW2/hyAV7KZmCP01dAR7sSiLcKrQeQfxEWNdQw6U 6jScVD4RHLYmSSRPyV3DWF
  • Ironport-phdr: A9a23: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 XGEq3hEnQ1kcoxsTZE=
  • Ironport-sdr: 6566ede8_ylLfPaTQaRW08wcTraC+PuC/quUW8DmfsYiMLMdf6BQ43Wn 8yG/LPFHUaybZnHniaiDCRGzveD3d7Nk6NpCp9g==

Hello

I was reading the documentation, and in there it was said that if a context is created without a scheduling policy, then that context basically is a parallel worker.

I tried to implement something as follows:

int ncpus = starpu_cpu_worker_get_count(); // p * t
  int *cpus = (int*) malloc(ncpus * sizeof(int));
  starpu_worker_get_ids_by_type(STARPU_CPU_WORKER, cpus, ncpus);

  int sched_ctx[p];
  for(int i = 0; i < p; ++i) {
    sched_ctx[i] = starpu_sched_ctx_create((cpus + i * t), t, "subctx", 0);
  }

  int big_sched_ctx = starpu_sched_ctx_create(fcpus, p * t, "ctx1", STARPU_SCHED_CTX_SUB_CTXS, sched_ctx, p, STARPU_SCHED_CTX_POLICY_NAME, "lws", 0);

Based on my understanding, I got all the cpus on the system. From there I create some sub-contexts that do not have any scheduling policy. Basically I partition the CPUs in p groups. Each group having t cpus.

Then I create a master context that has a policy. 

If I submit tasks to the big_sched_ctx context, each task is transmitted to the sub-contexts? Is this  assumption correct? I just want p parallel workers with t threads each. I hope I got the documentation correctly.

Best regards,
Doru





Archives gérées par MHonArc 2.6.19+.

Haut de le page