Drop `index_field` input to renders, add `.read()` profiling
parent
d8f325ddd9
commit
49ea4e1ef6
|
@ -44,10 +44,6 @@ from ..data._formatters import (
|
||||||
StepCurveFmtr, # "step" curve (like for vlm)
|
StepCurveFmtr, # "step" curve (like for vlm)
|
||||||
)
|
)
|
||||||
from ..data._pathops import xy_downsample
|
from ..data._pathops import xy_downsample
|
||||||
from .._profile import (
|
|
||||||
pg_profile_enabled,
|
|
||||||
# ms_slower_then,
|
|
||||||
)
|
|
||||||
from ._ohlc import (
|
from ._ohlc import (
|
||||||
BarItems,
|
BarItems,
|
||||||
# bar_from_ohlc_row,
|
# bar_from_ohlc_row,
|
||||||
|
@ -58,7 +54,10 @@ from ._curve import (
|
||||||
FlattenedOHLC,
|
FlattenedOHLC,
|
||||||
)
|
)
|
||||||
from ..log import get_logger
|
from ..log import get_logger
|
||||||
from .._profile import Profiler
|
from .._profile import (
|
||||||
|
Profiler,
|
||||||
|
pg_profile_enabled,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
log = get_logger(__name__)
|
log = get_logger(__name__)
|
||||||
|
@ -102,7 +101,7 @@ def render_baritems(
|
||||||
fmtr=OHLCBarsFmtr(
|
fmtr=OHLCBarsFmtr(
|
||||||
shm=viz.shm,
|
shm=viz.shm,
|
||||||
viz=viz,
|
viz=viz,
|
||||||
index_field=viz.index_field,
|
# index_field=viz.index_field,
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -111,7 +110,7 @@ def render_baritems(
|
||||||
fmtr=OHLCBarsAsCurveFmtr(
|
fmtr=OHLCBarsAsCurveFmtr(
|
||||||
shm=viz.shm,
|
shm=viz.shm,
|
||||||
viz=viz,
|
viz=viz,
|
||||||
index_field=viz.index_field,
|
# index_field=viz.index_field,
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -192,6 +191,7 @@ def render_baritems(
|
||||||
curve.hide()
|
curve.hide()
|
||||||
bars.show()
|
bars.show()
|
||||||
bars.update()
|
bars.update()
|
||||||
|
# breakpoint()
|
||||||
|
|
||||||
return (
|
return (
|
||||||
graphics,
|
graphics,
|
||||||
|
@ -401,6 +401,7 @@ class Viz(msgspec.Struct): # , frozen=True):
|
||||||
self,
|
self,
|
||||||
array_field: Optional[str] = None,
|
array_field: Optional[str] = None,
|
||||||
index_field: str | None = None,
|
index_field: str | None = None,
|
||||||
|
profiler: None | Profiler = None,
|
||||||
|
|
||||||
) -> tuple[
|
) -> tuple[
|
||||||
int, int, np.ndarray,
|
int, int, np.ndarray,
|
||||||
|
@ -418,6 +419,9 @@ class Viz(msgspec.Struct): # , frozen=True):
|
||||||
# readable data
|
# readable data
|
||||||
array = self.shm.array
|
array = self.shm.array
|
||||||
|
|
||||||
|
if profiler:
|
||||||
|
profiler('self.shm.array READ')
|
||||||
|
|
||||||
(
|
(
|
||||||
ifirst,
|
ifirst,
|
||||||
l,
|
l,
|
||||||
|
@ -429,6 +433,9 @@ class Viz(msgspec.Struct): # , frozen=True):
|
||||||
# if rbar < lbar:
|
# if rbar < lbar:
|
||||||
# breakpoint()
|
# breakpoint()
|
||||||
|
|
||||||
|
if profiler:
|
||||||
|
profiler('self.datums_range()')
|
||||||
|
|
||||||
abs_slc = slice(ifirst, ilast)
|
abs_slc = slice(ifirst, ilast)
|
||||||
|
|
||||||
# TODO: support time slicing
|
# TODO: support time slicing
|
||||||
|
@ -454,6 +461,12 @@ class Viz(msgspec.Struct): # , frozen=True):
|
||||||
# f'start/stop: {lbar},{rbar}\n',
|
# f'start/stop: {lbar},{rbar}\n',
|
||||||
# f'diff: {diff}\n',
|
# f'diff: {diff}\n',
|
||||||
# )
|
# )
|
||||||
|
if profiler:
|
||||||
|
profiler(
|
||||||
|
'`Flume.slice_from_time('
|
||||||
|
f'start_t={lbar}'
|
||||||
|
f'stop_t={rbar})'
|
||||||
|
)
|
||||||
|
|
||||||
# array-index slicing
|
# array-index slicing
|
||||||
# TODO: can we do time based indexing using arithmetic presuming
|
# TODO: can we do time based indexing using arithmetic presuming
|
||||||
|
@ -470,6 +483,8 @@ class Viz(msgspec.Struct): # , frozen=True):
|
||||||
|
|
||||||
# XXX: same as ^
|
# XXX: same as ^
|
||||||
# to_draw = array[lbar - ifirst:(rbar - ifirst) + 1]
|
# to_draw = array[lbar - ifirst:(rbar - ifirst) + 1]
|
||||||
|
if profiler:
|
||||||
|
profiler('index arithmetic for slicing')
|
||||||
|
|
||||||
if array_field:
|
if array_field:
|
||||||
array = array[array_field]
|
array = array[array_field]
|
||||||
|
@ -513,7 +528,7 @@ class Viz(msgspec.Struct): # , frozen=True):
|
||||||
read = (
|
read = (
|
||||||
xfirst, xlast, src_array,
|
xfirst, xlast, src_array,
|
||||||
ivl, ivr, in_view,
|
ivl, ivr, in_view,
|
||||||
) = self.read()
|
) = self.read(profiler=profiler)
|
||||||
|
|
||||||
profiler('read src shm data')
|
profiler('read src shm data')
|
||||||
|
|
||||||
|
@ -562,7 +577,6 @@ class Viz(msgspec.Struct): # , frozen=True):
|
||||||
fmtr=StepCurveFmtr(
|
fmtr=StepCurveFmtr(
|
||||||
shm=self.shm,
|
shm=self.shm,
|
||||||
viz=self,
|
viz=self,
|
||||||
index_field=self.index_field,
|
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue