Issue 1:
Please make sure that this is a bug. As per our GitHub Policy, we only address code/doc bugs, performance issues, feature requests and build/installation issues on GitHub. tag:bug_template

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):

OS Platform and Distribution (e.g., Linux Ubuntu 16.04):

Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:

TensorFlow installed from (source or binary):

TensorFlow version (use command below):

Python version: 3.6

Bazel version (if compiling from source):

GCC/Compiler version (if compiling from source):

CUDA/cuDNN version:

GPU model and memory:

You can collect some of this information using our environment capture

script

You can also obtain the TensorFlow version with: 1. TF 1.0: python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)" 2. TF 2.0: python -c "import tensorflow as tf; print(tf.version.GIT_VERSION, tf.version.VERSION)"

Describe the current behavior

Line 76 in tensorflow/python/platform/self_check.py

except OSError:

raise ImportError(

"Could not find %r. TensorFlow requires that this DLL be "

"installed in a directory that is named in your %%PATH%% "

"environment variable. Download and install CUDA %s from "

"this URL: https://developer.nvidia.com/cuda-90-download-archive"

% (build_info.cudart_dll_name, build_info.cuda_version_number))

The URL directs you to version 9 but the current dll checks for version 10.

Describe the expected behavior

Code to reproduce the issue

Provide a reproducible test case that is the bare minimum necessary to generate the problem.

Other info / logs

Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached.

Issue 2:
TensorFlow 1.x has over 2000 endpoints total including over 500 endpoints in the root namespace. As number of symbols grows, it is important to maintain a clear structure to aid discoverability.

Certain API symbol placements could be improved:

Some namespaces were created recently and might not contain all the corresponding symbols. For e.g. tf.math namespace was added recently. Symbols such as tf.round are not in tf.math namespace even though logically they belong in that namespace.

Some symbols are included in the root namespace even though they are rarely used (for e.g. tf.zeta).

Some symbols currently start with a prefix that could really be replaced by introducing a subnamespace (for e.g. tf.string_strip vs tf.strings.strip, tf.sparse_maximum vs tf.sparse.maximum).

Certain deep hierarchies seem redundant and could be flattened (for e.g. tf.saved_model.signature_constants.CLASSIFY_INPUTS could be moved to tf.saved_model.CLASSIFY_INPUTS).

To keep clear structure and reduce duplication, we want to collect all layers, losses and metrics under the tf.keras namespace.

In general, we want to balance flatness and browsability. Flat hierarchies allow for shorter endpoint names that are easy to remember (for e.g. tf.add vs tf.math.add). At the same time subnamespaces support easier browsability (for e.g. tf.math namespace would contain all math functions making it easier to discover available symbols).

Additional information about API symbol renames in TensorFlow 2.0 can be found in the RFC here.