diff --git a/Makefile b/Makefile
index 447ffe2..671a4c9 100644
--- a/Makefile
+++ b/Makefile
@@ -70,6 +70,8 @@
 	@echo "build                : Build the docker images."
 	@echo "                         - If this is the first time you are building, choose 'make build' option."
 	@echo "rw_core              : Build the rw_core docker image"
+	@echo "docker-build-profile : Build the rw_core_docker image with profiling enabled"
+	@echo "rw_core_profile      : Build the rw_core docker image with profiling enabled"
 	@echo "clean                : Remove files created by the build and tests"
 	@echo "distclean            : Remove sca directory and clean"
 	@echo "docker-push          : Push the docker images to an external repository"
@@ -101,10 +103,14 @@
 build: docker-build
 
 docker-build: rw_core
+docker-build-profile: rw_core_profile
 
 rw_core: local-protos local-lib-go
 	docker build $(DOCKER_BUILD_ARGS) -t ${RWCORE_IMAGENAME}:${DOCKER_TAG} -t ${RWCORE_IMAGENAME}:latest -f docker/Dockerfile.rw_core .
 
+rw_core_profile: local-protos local-lib-go
+	docker build $(DOCKER_BUILD_ARGS) -t ${RWCORE_IMAGENAME}:${DOCKER_TAG}-profile -t ${RWCORE_IMAGENAME}:latest-profile -f docker/Dockerfile.rw_core_profile .
+
 docker-push:
 	docker push ${RWCORE_IMAGENAME}:${DOCKER_TAG}
 
diff --git a/docker/Dockerfile.rw_core_profile b/docker/Dockerfile.rw_core_profile
new file mode 100644
index 0000000..3f7d3f1
--- /dev/null
+++ b/docker/Dockerfile.rw_core_profile
@@ -0,0 +1,93 @@
+# Copyright 2016 the original author or authors.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# -------------
+# Build stage
+
+FROM golang:1.12-alpine3.9 AS build-env
+
+# Install required packages
+RUN apk add --no-cache \
+	wget=1.20.3-r0 \
+	git=2.20.2-r0 \
+	make=4.2.1-r2 \
+	build-base=0.5-r1 \
+	protobuf=3.6.1-r1 \
+	protobuf-dev=3.6.1-r1
+
+# Golang container has GOPATH set to /go by default. Hence, need to explicitly enable
+# Go modules while using folder /go/src under GOPATH as build path; lest go modules
+# will be disabled
+ENV GO111MODULE=on
+
+# Use Standard go build directory structure
+WORKDIR /go/src
+
+# Copy common files.
+COPY common ./common
+COPY db ./db
+COPY vendor ./vendor
+
+# Copy files
+COPY rw_core ./rw_core
+COPY go.mod ./
+COPY go.sum ./
+
+ARG org_label_schema_version=unknown
+ARG org_label_schema_vcs_url=unknown
+ARG org_label_schema_vcs_ref=unknown
+ARG org_label_schema_build_date=unknown
+ARG org_opencord_vcs_commit_date=unknown
+ARG org_opencord_vcs_dirty=unknown
+
+# Build
+WORKDIR /go/src/rw_core
+SHELL ["/bin/ash", "-o", "pipefail", "-c"]
+RUN go build -tags profile -mod=vendor -o /go/bin/rw_core \
+	-ldflags \
+	"-X github.com/opencord/voltha-lib-go/v3/pkg/version.version=$org_label_schema_version \
+	 -X github.com/opencord/voltha-lib-go/v3/pkg/version.vcsRef=$org_label_schema_vcs_ref  \
+	 -X github.com/opencord/voltha-lib-go/v3/pkg/version.vcsDirty=$org_opencord_vcs_dirty \
+	 -X github.com/opencord/voltha-lib-go/v3/pkg/version.goVersion=$(go version 2>&1 | sed -E  's/.*go([0-9]+\.[0-9]+\.[0-9]+).*/\1/g') \
+	 -X github.com/opencord/voltha-lib-go/v3/pkg/version.os=$(go env GOHOSTOS) \
+	 -X github.com/opencord/voltha-lib-go/v3/pkg/version.arch=$(go env GOHOSTARCH) \
+	 -X github.com/opencord/voltha-lib-go/v3/pkg/version.buildTime=$org_label_schema_build_date"
+
+# -------------
+# Image creation stage
+
+FROM alpine:3.9.4
+
+# Set the working directory
+WORKDIR /app
+
+# Copy required files
+COPY --from=build-env /go/bin/rw_core /app/
+
+# Label image
+ARG org_label_schema_version=unknown
+ARG org_label_schema_vcs_url=unknown
+ARG org_label_schema_vcs_ref=unknown
+ARG org_label_schema_build_date=unknown
+ARG org_opencord_vcs_commit_date=unknown
+ARG org_opencord_vcs_dirty=unknown
+
+LABEL org.label-schema.schema-version=1.0 \
+      org.label-schema.name=voltha-rw-core \
+      org.label-schema.version=$org_label_schema_version \
+      org.label-schema.vcs-url=$org_label_schema_vcs_url \
+      org.label-schema.vcs-ref=$org_label_schema_vcs_ref \
+      org.label-schema.build-date=$org_label_schema_build_date \
+      org.opencord.vcs-commit-date=$org_opencord_vcs_commit_date \
+      org.opencord.vcs-dirty=$org_opencord_vcs_dirty
diff --git a/rw_core/main.go b/rw_core/main.go
index 7741d1f..71f64f3 100644
--- a/rw_core/main.go
+++ b/rw_core/main.go
@@ -223,7 +223,7 @@
 	} else {
 		log.Fatal("HOSTNAME not set")
 	}
-
+	realMain()
 	//Setup default logger - applies for packages that do not have specific logger set
 	if _, err := log.SetDefaultLogger(log.JSON, cf.LogLevel, log.Fields{"instanceId": instanceID}); err != nil {
 		log.With(log.Fields{"error": err}).Fatal("Cannot setup logging")
diff --git a/rw_core/profile.go b/rw_core/profile.go
new file mode 100644
index 0000000..31e7068
--- /dev/null
+++ b/rw_core/profile.go
@@ -0,0 +1,32 @@
+// +build profile
+
+/*
+ * Copyright 2018-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package main
+
+import (
+	"github.com/opencord/voltha-lib-go/v3/pkg/log"
+	"net/http"
+	_ "net/http/pprof"
+)
+
+func realMain() {
+	go func() {
+		log.Infoln(http.ListenAndServe("localhost:6060", nil))
+	}()
+
+}
diff --git a/rw_core/release.go b/rw_core/release.go
new file mode 100644
index 0000000..46750e2
--- /dev/null
+++ b/rw_core/release.go
@@ -0,0 +1,27 @@
+// +build !profile
+
+/*
+ * Copyright 2018-present Open Networking Foundation
+
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package main
+
+import (
+	"github.com/opencord/voltha-lib-go/v3/pkg/log"
+)
+
+func realMain() {
+	log.Infoln("NOT PROFILING")
+}
