()
| 55 | |
| 56 | |
| 57 | def torch_parallel_backend(): |
| 58 | try: |
| 59 | match = re.search("^ATen parallel backend: (?P<backend>.*)$", torch._C._parallel_info(), re.MULTILINE) |
| 60 | if match is None: |
| 61 | return None |
| 62 | backend = match.group("backend") |
| 63 | if backend == "OpenMP": |
| 64 | return "AT_PARALLEL_OPENMP" |
| 65 | if backend == "native thread pool": |
| 66 | return "AT_PARALLEL_NATIVE" |
| 67 | if backend == "native thread pool and TBB": |
| 68 | return "AT_PARALLEL_NATIVE_TBB" |
| 69 | except (NameError, AttributeError): # no torch or no binaries |
| 70 | warnings.warn("Could not determine torch parallel_info.") |
| 71 | return None |
| 72 | |
| 73 | |
| 74 | def omp_flags(): |
no outgoing calls
no test coverage detected
searching dependent graphs…