Created
January 22, 2026 21:35
-
-
Save bjacob/81587e751fadd6cf3a1d88551462a562 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ---------------------------- live log sessionstart ----------------------------- | |
| INFO conftest:conftest.py:38 Pytest quality test session is starting | |
| ============================= test session starts ============================== | |
| platform linux -- Python 3.12.3, pytest-8.0.0, pluggy-1.6.0 | |
| rootdir: /home/ossci/iree-test-suites/sharktank_models | |
| configfile: pytest.ini | |
| plugins: anyio-4.11.0, xdist-3.5.0, timeout-2.4.0, subtests-0.15.0, metadata-3.1.1, cov-7.0.0, asyncio-0.23.8, html-4.1.1, retry-1.7.0, reportlog-1.0.0, check-2.6.0 | |
| timeout: 600.0s | |
| timeout method: signal | |
| timeout func_only: False | |
| asyncio: mode=Mode.STRICT | |
| collected 1 item | |
| iree-test-suites/sharktank_models/quality_tests/model_quality_run.py::sdxl :: clip_cpu FAILED [100%] | |
| =================================== FAILURES =================================== | |
| __________________________ usecase: sdxl :: clip_cpu ___________________________ | |
| cls = <class '_pytest.runner.CallInfo'> | |
| func = <function call_runtest_hook.<locals>.<lambda> at 0x7f0d474dc2c0> | |
| when = 'call' | |
| reraise = (<class '_pytest.outcomes.Exit'>, <class 'KeyboardInterrupt'>) | |
| @classmethod | |
| def from_call( | |
| cls, | |
| func: Callable[[], TResult], | |
| when: Literal["collect", "setup", "call", "teardown"], | |
| reraise: Optional[ | |
| Union[Type[BaseException], Tuple[Type[BaseException], ...]] | |
| ] = None, | |
| ) -> "CallInfo[TResult]": | |
| """Call func, wrapping the result in a CallInfo. | |
| :param func: | |
| The function to call. Called without arguments. | |
| :param when: | |
| The phase in which the function is called. | |
| :param reraise: | |
| Exception or exceptions that shall propagate if raised by the | |
| function, instead of being wrapped in the CallInfo. | |
| """ | |
| excinfo = None | |
| start = timing.time() | |
| precise_start = timing.perf_counter() | |
| try: | |
| > result: Optional[TResult] = func() | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/runner.py:345: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| > lambda: ihook(item=item, **kwds), when=when, reraise=reraise | |
| ) | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/runner.py:266: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <HookCaller 'pytest_runtest_call'> | |
| kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>}, firstresult = False | |
| def __call__(self, **kwargs: object) -> Any: | |
| """Call the hook. | |
| Only accepts keyword arguments, which should match the hook | |
| specification. | |
| Returns the result(s) of calling all registered plugins, see | |
| :ref:`calling`. | |
| """ | |
| assert not self.is_historic(), ( | |
| "Cannot directly call a historic hook - use call_historic instead." | |
| ) | |
| self._verify_all_args_are_provided(kwargs) | |
| firstresult = self.spec.opts.get("firstresult", False) if self.spec else False | |
| # Copy because plugins may register other plugins during iteration (#438). | |
| > return self._hookexec(self.name, self._hookimpls.copy(), kwargs, firstresult) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_hooks.py:512: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <_pytest.config.PytestPluginManager object at 0x7f0d49b2b920> | |
| hook_name = 'pytest_runtest_call' | |
| methods = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>}, firstresult = False | |
| def _hookexec( | |
| self, | |
| hook_name: str, | |
| methods: Sequence[HookImpl], | |
| kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| # called from all hookcaller instances. | |
| # enable_tracing will set its own wrapping function at self._inner_hookexec | |
| > return self._inner_hookexec(hook_name, methods, kwargs, firstresult) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_manager.py:120: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| res = hook_impl.function(*args) | |
| if res is not None: | |
| results.append(res) | |
| if firstresult: # halt further impl calls | |
| break | |
| except BaseException as exc: | |
| exception = exc | |
| finally: | |
| if firstresult: # first result hooks return a single value | |
| result = results[0] if results else None | |
| else: | |
| result = results | |
| # run all wrapper post-yield blocks | |
| for teardown in reversed(teardowns): | |
| try: | |
| if exception is not None: | |
| try: | |
| teardown.throw(exception) | |
| except RuntimeError as re: | |
| # StopIteration from generator causes RuntimeError | |
| # even for coroutine usage - see #544 | |
| if ( | |
| isinstance(exception, StopIteration) | |
| and re.__cause__ is exception | |
| ): | |
| teardown.close() | |
| continue | |
| else: | |
| raise | |
| else: | |
| teardown.send(result) | |
| # Following is unreachable for a well behaved hook wrapper. | |
| # Try to force finalizers otherwise postponed till GC action. | |
| # Note: close() may raise if generator handles GeneratorExit. | |
| teardown.close() | |
| except StopIteration as si: | |
| result = si.value | |
| exception = None | |
| continue | |
| except BaseException as e: | |
| exception = e | |
| continue | |
| _raise_wrapfail(teardown, "has second yield") | |
| if exception is not None: | |
| > raise exception | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:167: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| res = hook_impl.function(*args) | |
| if res is not None: | |
| results.append(res) | |
| if firstresult: # halt further impl calls | |
| break | |
| except BaseException as exc: | |
| exception = exc | |
| finally: | |
| if firstresult: # first result hooks return a single value | |
| result = results[0] if results else None | |
| else: | |
| result = results | |
| # run all wrapper post-yield blocks | |
| for teardown in reversed(teardowns): | |
| try: | |
| if exception is not None: | |
| try: | |
| > teardown.throw(exception) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:139: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| @pytest.hookimpl(wrapper=True, tryfirst=True) | |
| def pytest_runtest_call() -> Generator[None, None, None]: | |
| > yield from thread_exception_runtest_hook() | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/threadexception.py:87: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| def thread_exception_runtest_hook() -> Generator[None, None, None]: | |
| with catch_threading_exception() as cm: | |
| try: | |
| > yield | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/threadexception.py:63: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| res = hook_impl.function(*args) | |
| if res is not None: | |
| results.append(res) | |
| if firstresult: # halt further impl calls | |
| break | |
| except BaseException as exc: | |
| exception = exc | |
| finally: | |
| if firstresult: # first result hooks return a single value | |
| result = results[0] if results else None | |
| else: | |
| result = results | |
| # run all wrapper post-yield blocks | |
| for teardown in reversed(teardowns): | |
| try: | |
| if exception is not None: | |
| try: | |
| > teardown.throw(exception) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:139: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| @pytest.hookimpl(wrapper=True, tryfirst=True) | |
| def pytest_runtest_call() -> Generator[None, None, None]: | |
| > yield from unraisable_exception_runtest_hook() | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py:90: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| def unraisable_exception_runtest_hook() -> Generator[None, None, None]: | |
| with catch_unraisable_exception() as cm: | |
| try: | |
| > yield | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py:65: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| res = hook_impl.function(*args) | |
| if res is not None: | |
| results.append(res) | |
| if firstresult: # halt further impl calls | |
| break | |
| except BaseException as exc: | |
| exception = exc | |
| finally: | |
| if firstresult: # first result hooks return a single value | |
| result = results[0] if results else None | |
| else: | |
| result = results | |
| # run all wrapper post-yield blocks | |
| for teardown in reversed(teardowns): | |
| try: | |
| if exception is not None: | |
| try: | |
| > teardown.throw(exception) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:139: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <_pytest.logging.LoggingPlugin object at 0x7f0d48b12ae0> | |
| item = <ModelQualityRunItem sdxl :: clip_cpu> | |
| @hookimpl(wrapper=True) | |
| def pytest_runtest_call(self, item: nodes.Item) -> Generator[None, None, None]: | |
| self.log_cli_handler.set_when("call") | |
| > yield from self._runtest_for(item, "call") | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/logging.py:839: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <_pytest.logging.LoggingPlugin object at 0x7f0d48b12ae0> | |
| item = <ModelQualityRunItem sdxl :: clip_cpu>, when = 'call' | |
| def _runtest_for(self, item: nodes.Item, when: str) -> Generator[None, None, None]: | |
| """Implement the internals of the pytest_runtest_xxx() hooks.""" | |
| with catching_logs( | |
| self.caplog_handler, | |
| level=self.log_level, | |
| ) as caplog_handler, catching_logs( | |
| self.report_handler, | |
| level=self.log_level, | |
| ) as report_handler: | |
| caplog_handler.reset() | |
| report_handler.reset() | |
| item.stash[caplog_records_key][when] = caplog_handler.records | |
| item.stash[caplog_handler_key] = caplog_handler | |
| try: | |
| > yield | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/logging.py:822: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| res = hook_impl.function(*args) | |
| if res is not None: | |
| results.append(res) | |
| if firstresult: # halt further impl calls | |
| break | |
| except BaseException as exc: | |
| exception = exc | |
| finally: | |
| if firstresult: # first result hooks return a single value | |
| result = results[0] if results else None | |
| else: | |
| result = results | |
| # run all wrapper post-yield blocks | |
| for teardown in reversed(teardowns): | |
| try: | |
| if exception is not None: | |
| try: | |
| > teardown.throw(exception) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:139: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <CaptureManager _method='fd' _global_capturing=<MultiCapture out=<FDCapture 1 oldfd=5 _state='suspended' tmpfile=<_io....xtIOWrapper name='/dev/null' mode='r' encoding='utf-8'>> _state='suspended' _in_suspended=False> _capture_fixture=None> | |
| item = <ModelQualityRunItem sdxl :: clip_cpu> | |
| @hookimpl(wrapper=True) | |
| def pytest_runtest_call(self, item: Item) -> Generator[None, None, None]: | |
| with self.item_capture("call", item): | |
| > return (yield) | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/capture.py:882: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| res = hook_impl.function(*args) | |
| if res is not None: | |
| results.append(res) | |
| if firstresult: # halt further impl calls | |
| break | |
| except BaseException as exc: | |
| exception = exc | |
| finally: | |
| if firstresult: # first result hooks return a single value | |
| result = results[0] if results else None | |
| else: | |
| result = results | |
| # run all wrapper post-yield blocks | |
| for teardown in reversed(teardowns): | |
| try: | |
| if exception is not None: | |
| try: | |
| > teardown.throw(exception) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:139: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_impl = <HookImpl plugin_name='timeout', plugin=<module 'pytest_timeout' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/pytest_timeout.py'>> | |
| hook_name = 'pytest_runtest_call' | |
| args = [<ModelQualityRunItem sdxl :: clip_cpu>] | |
| def run_old_style_hookwrapper( | |
| hook_impl: HookImpl, hook_name: str, args: Sequence[object] | |
| ) -> Teardown: | |
| """ | |
| backward compatibility wrapper to run a old style hookwrapper as a wrapper | |
| """ | |
| teardown: Teardown = cast(Teardown, hook_impl.function(*args)) | |
| try: | |
| next(teardown) | |
| except StopIteration: | |
| _raise_wrapfail(teardown, "did not yield") | |
| try: | |
| res = yield | |
| result = Result(res, None) | |
| except BaseException as exc: | |
| result = Result(None, exc) | |
| try: | |
| teardown.send(result) | |
| except StopIteration: | |
| pass | |
| except BaseException as e: | |
| _warn_teardown_exception(hook_name, hook_impl, e) | |
| raise | |
| else: | |
| _raise_wrapfail(teardown, "has second yield") | |
| finally: | |
| teardown.close() | |
| > return result.get_result() | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:53: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <pluggy._result.Result object at 0x7f0d474e3000> | |
| def get_result(self) -> ResultType: | |
| """Get the result(s) for this hook call. | |
| If the hook was marked as a ``firstresult`` only a single value | |
| will be returned, otherwise a list of results. | |
| """ | |
| __tracebackhide__ = True | |
| exc = self._exception | |
| tb = self._traceback | |
| if exc is None: | |
| return cast(ResultType, self._result) | |
| else: | |
| > raise exc.with_traceback(tb) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_result.py:103: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_impl = <HookImpl plugin_name='timeout', plugin=<module 'pytest_timeout' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/pytest_timeout.py'>> | |
| hook_name = 'pytest_runtest_call' | |
| args = [<ModelQualityRunItem sdxl :: clip_cpu>] | |
| def run_old_style_hookwrapper( | |
| hook_impl: HookImpl, hook_name: str, args: Sequence[object] | |
| ) -> Teardown: | |
| """ | |
| backward compatibility wrapper to run a old style hookwrapper as a wrapper | |
| """ | |
| teardown: Teardown = cast(Teardown, hook_impl.function(*args)) | |
| try: | |
| next(teardown) | |
| except StopIteration: | |
| _raise_wrapfail(teardown, "did not yield") | |
| try: | |
| > res = yield | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:38: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| res = hook_impl.function(*args) | |
| if res is not None: | |
| results.append(res) | |
| if firstresult: # halt further impl calls | |
| break | |
| except BaseException as exc: | |
| exception = exc | |
| finally: | |
| if firstresult: # first result hooks return a single value | |
| result = results[0] if results else None | |
| else: | |
| result = results | |
| # run all wrapper post-yield blocks | |
| for teardown in reversed(teardowns): | |
| try: | |
| if exception is not None: | |
| try: | |
| > teardown.throw(exception) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:139: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| item = <ModelQualityRunItem sdxl :: clip_cpu> | |
| @hookimpl(wrapper=True) | |
| def pytest_runtest_call(item: Item) -> Generator[None, None, None]: | |
| xfailed = item.stash.get(xfailed_key, None) | |
| if xfailed is None: | |
| item.stash[xfailed_key] = xfailed = evaluate_xfail_marks(item) | |
| if xfailed and not item.config.option.runxfail and not xfailed.run: | |
| xfail("[NOTRUN] " + xfailed.reason) | |
| try: | |
| > return (yield) | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/skipping.py:257: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| hook_name = 'pytest_runtest_call' | |
| hook_impls = [<HookImpl plugin_name='runner', plugin=<module '_pytest.runner' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-...aisableexception' from '/home/ossci/shark-ai/.venv/lib/python3.12/site-packages/_pytest/unraisableexception.py'>>, ...] | |
| caller_kwargs = {'item': <ModelQualityRunItem sdxl :: clip_cpu>} | |
| firstresult = False | |
| def _multicall( | |
| hook_name: str, | |
| hook_impls: Sequence[HookImpl], | |
| caller_kwargs: Mapping[str, object], | |
| firstresult: bool, | |
| ) -> object | list[object]: | |
| """Execute a call into multiple python functions/methods and return the | |
| result(s). | |
| ``caller_kwargs`` comes from HookCaller.__call__(). | |
| """ | |
| __tracebackhide__ = True | |
| results: list[object] = [] | |
| exception = None | |
| try: # run impl and wrapper setup functions in a loop | |
| teardowns: list[Teardown] = [] | |
| try: | |
| for hook_impl in reversed(hook_impls): | |
| try: | |
| args = [caller_kwargs[argname] for argname in hook_impl.argnames] | |
| except KeyError as e: | |
| # coverage bug - this is tested | |
| for argname in hook_impl.argnames: # pragma: no cover | |
| if argname not in caller_kwargs: | |
| raise HookCallError( | |
| f"hook call must provide argument {argname!r}" | |
| ) from e | |
| if hook_impl.hookwrapper: | |
| function_gen = run_old_style_hookwrapper(hook_impl, hook_name, args) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| elif hook_impl.wrapper: | |
| try: | |
| # If this cast is not valid, a type error is raised below, | |
| # which is the desired response. | |
| res = hook_impl.function(*args) | |
| function_gen = cast(Generator[None, object, object], res) | |
| next(function_gen) # first yield | |
| teardowns.append(function_gen) | |
| except StopIteration: | |
| _raise_wrapfail(function_gen, "did not yield") | |
| else: | |
| > res = hook_impl.function(*args) | |
| shark-ai/.venv/lib/python3.12/site-packages/pluggy/_callers.py:121: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| item = <ModelQualityRunItem sdxl :: clip_cpu> | |
| def pytest_runtest_call(item: Item) -> None: | |
| _update_current_test_var(item, "call") | |
| try: | |
| del sys.last_type | |
| del sys.last_value | |
| del sys.last_traceback | |
| except AttributeError: | |
| pass | |
| try: | |
| item.runtest() | |
| except Exception as e: | |
| # Store trace info to allow postmortem debugging | |
| sys.last_type = type(e) | |
| sys.last_value = e | |
| assert e.__traceback__ is not None | |
| # Skip *this* frame | |
| sys.last_traceback = e.__traceback__.tb_next | |
| > raise e | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/runner.py:181: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| item = <ModelQualityRunItem sdxl :: clip_cpu> | |
| def pytest_runtest_call(item: Item) -> None: | |
| _update_current_test_var(item, "call") | |
| try: | |
| del sys.last_type | |
| del sys.last_value | |
| del sys.last_traceback | |
| except AttributeError: | |
| pass | |
| try: | |
| > item.runtest() | |
| shark-ai/.venv/lib/python3.12/site-packages/_pytest/runner.py:173: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <ModelQualityRunItem sdxl :: clip_cpu> | |
| def runtest(self): | |
| > self.initialize() | |
| iree-test-suites/sharktank_models/quality_tests/model_quality_run.py:68: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| self = <ModelQualityRunItem sdxl :: clip_cpu> | |
| def initialize(self): | |
| with open(self.file_path, "r") as file: | |
| data = json.load(file) | |
| # retrieving source fixtures if available in JSON file | |
| self.inputs = ( | |
| > fetch_source_fixtures_for_run_flags( | |
| data.get("inputs"), self.model_name, self.submodel_name | |
| ) | |
| if data.get("inputs") | |
| else None | |
| ) | |
| iree-test-suites/sharktank_models/quality_tests/model_quality_run.py:78: | |
| _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ | |
| inference_list = ['1x64xi64', '1x64xi64', '1x64xi64', '1x64xi64'] | |
| model_name = 'sdxl', submodel_name = 'clip' | |
| def fetch_source_fixtures_for_run_flags(inference_list, model_name, submodel_name): | |
| result = [] | |
| for entry in inference_list: | |
| > source = entry.get("source") | |
| E AttributeError: 'str' object has no attribute 'get' | |
| iree-test-suites/sharktank_models/quality_tests/model_quality_run.py:26: AttributeError | |
| ============================== slowest durations =============================== | |
| (3 durations < 0.005s hidden. Use -vv to show these durations.) | |
| =========================== short test summary info ============================ | |
| FAILED iree-test-suites/sharktank_models/quality_tests/model_quality_run.py::sdxl :: clip_cpu | |
| ============================== 1 failed in 0.08s =============================== |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment