Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cavusmustafa/modular backend review v6 #762

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

cavusmustafa
Copy link

No description provided.

@cavusmustafa cavusmustafa marked this pull request as ready for review December 17, 2020 01:54
Copy link
Contributor

@kanvi-nervana kanvi-nervana left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Requesting some cosmetic changes
Please remove commented code, use CamelCase for function names

ngraph_bridge/kernels/ngraph_encapsulate_op.cc Outdated Show resolved Hide resolved
NGraphClusterManager::NumberOfClusters() == 1) {
multi_req_execution = true;
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor: Add a log to let know if batching is enabled

Comment on lines 20 to 24
#include <ie_core.hpp>
#include <memory>
#include <string>
#include <vector>
#include "ngraph_bridge/ie_backend_engine.h"
Copy link
Contributor

@kanvi-nervana kanvi-nervana Dec 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

General guideline followed in the bridge
standard includes
TF
OV
nGraph
bridge

Comment on lines 17 to 19
#include "ngraph_bridge/ie_backend_engine.h"
#include <iostream>
#include "ngraph_bridge/ie_utils.h"
Copy link
Contributor

@kanvi-nervana kanvi-nervana Dec 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

General guideline followed in the bridge
standard includes
TF
OV
nGraph
bridge

Comment on lines 20 to 25
#include <ie_core.hpp>
#include <memory>
#include <string>
#include <vector>
#include "ngraph_bridge/ie_tensor.h"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above

Comment on lines 20 to 24
#include <ie_core.hpp>
#include <memory>
#include <string>
#include <vector>
#include "ngraph_bridge/ie_backend_engine.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above

Comment on lines 23 to 27
#include <atomic>
#include <ie_core.hpp>
#include <mutex>
#include <ostream>
#include <vector>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above

Comment on lines 17 to 19
#include "ngraph_bridge/ie_vadm_engine.h"
#include <iostream>
#include "ngraph_bridge/ie_utils.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above

Comment on lines 17 to 20
#include "ngraph_bridge/ie_basic_engine.h"
#include <iostream>
#include "logging/ngraph_log.h"
#include "ngraph_bridge/ie_utils.h"
Copy link
Contributor

@kanvi-nervana kanvi-nervana Dec 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

General guideline followed in the bridge
standard includes
TF
OV
nGraph
bridge

if (multi_req_execution) {
m_ie_engine->enable_multi_req_execution();
} else {
m_ie_engine->disable_multi_req_execution();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this needed, isn't it disabled by default?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's added in case batching might be disabled during consecutive executions. But we don't have advanced checks for now and there is no scenario to disable batching if it's already enabled. I updated it accordingly.

@cavusmustafa
Copy link
Author

cavusmustafa commented Dec 18, 2020

Requesting some cosmetic changes
Please remove commented code, use CamelCase for function names

I'm confused about using CamelCase. Some function names does not use it in bridge now. Is there a plan to update them all?

@kanvi-nervana
Copy link
Contributor

Requesting some cosmetic changes
Please remove commented code, use CamelCase for function names

I'm confused about using CamelCase. Some function names does not use it in bridge now. Is there a plan to update them all?

Yes, we will update the function names that don't follow it

Copy link
Contributor

@adk9 adk9 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the revised PR. I have a few high-level comments:

  1. Please break this PR into individual self-contained PRs. The changes here not only introduce a new backend infrastructure (with possibly redundant interfaces to those that currently exist) but also add a new HDDL/VADM backend. I'd propose that we add a modular backend first, followed by a separate PR to add a new HDDL/VADM backend with the tests enabled for it.

  2. Secondly, please take a look at the TensorFlow Contribution guidelines and standards for the general contribution guidelines that we use. Please use a short explanatory title for the PR and add a description to your PR if the title is not self-explanatory. The guide also points to the Google C++ style guide that's being used for the code in here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants