Branch: refs/heads/master
  Home:   https://github.com/Linaro/odp
  Commit: db8c7882c2fc8c849cebef08e505343ae1396b79
      
https://github.com/Linaro/odp/commit/db8c7882c2fc8c849cebef08e505343ae1396b79
  Author: Petri Savolainen <petri.savolai...@linaro.org>
  Date:   2018-09-12 (Wed, 12 Sep 2018)

  Changed paths:
    M platform/linux-generic/odp_queue_basic.c

  Log Message:
  -----------
  linux-gen: queue: remove extra checks

Remove unnecessary checks from critical sections of scheduled
queue enqueue and dequeue operations. Parallelism improves when
the number of instructions and (potential) cache misses decreases
when holding the lock.

Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org>


  Commit: 3331e3b51dfcbfe8be5bc8c118cb8a2561294d60
      
https://github.com/Linaro/odp/commit/3331e3b51dfcbfe8be5bc8c118cb8a2561294d60
  Author: Petri Savolainen <petri.savolai...@linaro.org>
  Date:   2018-09-12 (Wed, 12 Sep 2018)

  Changed paths:
    M platform/linux-generic/odp_schedule_basic.c

  Log Message:
  -----------
  linux-gen: sched: clean up local data struct

Move stash variables into a struct. Use only 16 bits for thread id,
which is enough for 64k threads.

Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org>


  Commit: 2ba3fc5be07c77feaaffdaf7eb1bdd9f7c0f37c2
      
https://github.com/Linaro/odp/commit/2ba3fc5be07c77feaaffdaf7eb1bdd9f7c0f37c2
  Author: Petri Savolainen <petri.savolai...@linaro.org>
  Date:   2018-09-12 (Wed, 12 Sep 2018)

  Changed paths:
    M platform/linux-generic/odp_schedule_basic.c

  Log Message:
  -----------
  linux-gen: sched: single variable for sync context status

Use single thread local variable to keep track if
a synchronization context is held and the type of the context
(atomic or ordered). Performance is improved as sync context
status is located on single (the first) cache line of
sched_local_t.

Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org>


  Commit: 47c4ecd4bfdeeca0fd507dbb4f9182b36e5829f9
      
https://github.com/Linaro/odp/commit/47c4ecd4bfdeeca0fd507dbb4f9182b36e5829f9
  Author: Petri Savolainen <petri.savolai...@linaro.org>
  Date:   2018-09-12 (Wed, 12 Sep 2018)

  Changed paths:
    M platform/linux-generic/include/odp_queue_basic_internal.h
    M platform/linux-generic/odp_queue_basic.c
    M platform/linux-generic/odp_schedule_basic.c
    M platform/linux-generic/odp_schedule_iquery.c
    M platform/linux-generic/odp_schedule_sp.c

  Log Message:
  -----------
  linux-gen: sched: remove queue_destroy_finalize callback

Scheduled queue dequeue function calls directly the scheduler
queue destroy callback. Sched_queue_deq() usage is simpler
when the extra round of callbacks is removed.

Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org>


  Commit: 8ae6e015e8d73092b5c6b728fa39ff8190b88015
      
https://github.com/Linaro/odp/commit/8ae6e015e8d73092b5c6b728fa39ff8190b88015
  Author: Petri Savolainen <petri.savolai...@linaro.org>
  Date:   2018-09-12 (Wed, 12 Sep 2018)

  Changed paths:
    M platform/linux-generic/odp_schedule_basic.c

  Log Message:
  -----------
  linux-gen: sched: stash ring pointer

Save ring pointer into stash to avoid table lookups
when releasing the atomic context.

Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org>


  Commit: 42a46399f064212fc7a16f088779bee744d1241c
      
https://github.com/Linaro/odp/commit/42a46399f064212fc7a16f088779bee744d1241c
  Author: Petri Savolainen <petri.savolai...@linaro.org>
  Date:   2018-09-12 (Wed, 12 Sep 2018)

  Changed paths:
    M platform/linux-generic/include/odp_ring_internal.h
    M platform/linux-generic/odp_schedule_basic.c
    M platform/linux-generic/odp_schedule_iquery.c
    M platform/linux-generic/odp_schedule_sp.c

  Log Message:
  -----------
  linux-gen: ring: change ring_deq return value

Return number of data values dequeued (0 or 1) instead of
the data value. This improves error tolerance as there's no
data value reserved to indicate empty ring. Also CPU may
speculate further before the actual data value is actually
needed.

Signed-off-by: Petri Savolainen <petri.savolai...@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischo...@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uva...@linaro.org>


Compare: https://github.com/Linaro/odp/compare/1adfa2e17b27...42a46399f064
      **NOTE:** This service has been marked for deprecation: 
https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.

Reply via email to