Page MenuHomePhabricator

Fznamznon (Mariya Podchishchaeva)
User

Projects

User does not belong to any projects.

User Details

User Since
Dec 18 2017, 12:01 AM (87 w, 1 d)

Recent Activity

Jun 27 2019

Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Minor fix

Jun 27 2019, 8:52 AM · Restricted Project
Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Added warning diagnostic for sycl_kernel attribute.

Jun 27 2019, 7:18 AM · Restricted Project

Jun 24 2019

Fznamznon added reviewers for D63710: [SYCL] Re-use OpenCL sampler in SYCL device mode: bader, Anastasia.
Jun 24 2019, 5:33 AM · Restricted Project
Fznamznon created D63710: [SYCL] Re-use OpenCL sampler in SYCL device mode.
Jun 24 2019, 5:33 AM · Restricted Project

Jun 20 2019

Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Fixed a couple coding style issues, renamed markDevice function with markSYCLDevice.

Jun 20 2019, 8:59 AM · Restricted Project
Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Updated sycl_kernel attribute documentation.

Jun 20 2019, 7:54 AM · Restricted Project

Jun 19 2019

Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
Jun 19 2019, 1:46 PM · Restricted Project
Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Appled part of comments from @aaron.ballman:

  • Fixed grammar and code style in all places except sycl_kernel docs
  • Added a lit test which checks that sycl_device attribute implicitly added to proper declarations
Jun 19 2019, 1:42 PM · Restricted Project

Jun 18 2019

Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
Jun 18 2019, 8:01 AM · Restricted Project
Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.

Ping.

Jun 18 2019, 4:45 AM · Restricted Project

Jun 11 2019

Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.

@aaron.ballman , please let me know if you have additional comments/suggestions. If not, could you please accept this revision?

Jun 11 2019, 5:43 AM · Restricted Project

Jun 10 2019

Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Applied comments from @Anastasia

Jun 10 2019, 2:25 AM · Restricted Project

Jun 3 2019

Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
Jun 3 2019, 3:32 AM · Restricted Project

May 31 2019

Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
May 31 2019, 5:52 AM · Restricted Project

May 30 2019

vladimirlaz <vladimir.lazarev@intel.com> committed rG9f46e66220d4: [SYCL][NFC] Remove return from void function (authored by Fznamznon).
[SYCL][NFC] Remove return from void function
May 30 2019, 8:08 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG39e2c74a39cd: [SYCL] Allow host access for interoperability buffers (authored by Fznamznon).
[SYCL] Allow host access for interoperability buffers
May 30 2019, 8:08 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rGc9f21fad6162: [SYCL] Implement buffer constructor with iterators in accordance with spec (authored by Fznamznon).
[SYCL] Implement buffer constructor with iterators in accordance with spec
May 30 2019, 8:08 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG82fead6e0563: [SYCL] Implement basic sub-buffers support (authored by Fznamznon).
[SYCL] Implement basic sub-buffers support
May 30 2019, 8:08 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rGe8ac887f8642: [SYCL] Implement broadcasting vec::operator= (authored by Fznamznon).
[SYCL] Implement broadcasting vec::operator=
May 30 2019, 8:07 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG3e11f59cf86c: [SYCL] Initialize buffer range and size in interop constructor (authored by Fznamznon).
[SYCL] Initialize buffer range and size in interop constructor
May 30 2019, 8:07 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG1e514c82b139: [SYCL] Use std::enable_if properly in buffer contructors (authored by Fznamznon).
[SYCL] Use std::enable_if properly in buffer contructors
May 30 2019, 8:07 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG474c9343ad41: [SYCL] Implement buffer::set_write_back (authored by Fznamznon).
[SYCL] Implement buffer::set_write_back
May 30 2019, 8:07 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG0b4e9e9447e0: [SYCL] Implement buffer::has_property and buffer::get_property (authored by Fznamznon).
[SYCL] Implement buffer::has_property and buffer::get_property
May 30 2019, 8:07 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG0b9673fda707: [SYCL] Implement buffer::get_access with range and offset (authored by Fznamznon).
[SYCL] Implement buffer::get_access with range and offset
May 30 2019, 8:07 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG55b8dcea61a5: [SYCL] Add support for custom allocators in buffer (authored by Fznamznon).
[SYCL] Add support for custom allocators in buffer
May 30 2019, 8:06 AM
Vladimir Lazarev <vladimir.lazarev@intel.com> committed rG0baa4475cf85: [SYCL] Fix accessor to subset of buffer indexing (runtime part) (authored by Fznamznon).
[SYCL] Fix accessor to subset of buffer indexing (runtime part)
May 30 2019, 8:06 AM
Vladimir Lazarev <vladimir.lazarev@intel.com> committed rG7edf29c68344: [SYCL] Fix accessor to subset of buffer indexing (compiler part) (authored by Fznamznon).
[SYCL] Fix accessor to subset of buffer indexing (compiler part)
May 30 2019, 8:05 AM
Vladimir Lazarev <vladimir.lazarev@intel.com> committed rGf0d1636d09d3: [SYCL] Switch to use one definition of SYCL runtime classes in SYCL tests (authored by Fznamznon).
[SYCL] Switch to use one definition of SYCL runtime classes in SYCL tests
May 30 2019, 8:04 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG9fa265405a65: [SYCL] Do not always create new OpenCL buffers to copy from device to host (authored by Fznamznon).
[SYCL] Do not always create new OpenCL buffers to copy from device to host
May 30 2019, 8:03 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG5124d7c12978: [SYCL] Implement cl::sycl::buffer::reinterpret (authored by Fznamznon).
[SYCL] Implement cl::sycl::buffer::reinterpret
May 30 2019, 8:03 AM
vladimirlaz <vladimir.lazarev@intel.com> committed rG3ce5091397c3: [SYCL] Added constexpr specifier to standard functions declarations in… (authored by Fznamznon).
[SYCL] Added constexpr specifier to standard functions declarations in…
May 30 2019, 8:01 AM

May 28 2019

Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Applied comments from @Anastasia

  • Added documentation for sycl_kernel function
  • Added comments to Sema.h
  • Added -std=c++11 to test run lines
May 28 2019, 5:08 AM · Restricted Project
Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
May 28 2019, 4:36 AM · Restricted Project

May 23 2019

Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
May 23 2019, 1:08 AM · Restricted Project

May 22 2019

Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Minor fix.

May 22 2019, 1:12 AM · Restricted Project

May 21 2019

Fznamznon retitled D60455: [SYCL] Implement SYCL device code outlining from [SYCL] Add support for SYCL device attributes to [SYCL] Implement SYCL device code outlining.
May 21 2019, 8:07 AM · Restricted Project
Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Added semantics for new attributes

May 21 2019, 7:59 AM · Restricted Project

Apr 19 2019

Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.

I tried to reuse OpenCL kernel attribute with "__kernel" keyword in our current SYCL implementation. PR with this try is here - https://github.com/intel/llvm/pull/97
Now It looks feasible but with a couple notes:
From SYCL specification "SYCL is designed to be as close to standard C++ as possible. Standard C++ compiler can compile the SYCL programs and they will run correctly on host CPU." So SYCL doesn't provide non-standard kernel keyword which is provided by OpenCL. Due this fact it's not possible to add kernel keyword as in OpenCL, it will prevent compilation of following valid SYCL code:

Apr 19 2019, 8:01 AM · Restricted Project

Apr 17 2019

Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.

It would be better to rename clang/test/SemaSYCL/device-attrubutes.cpp to clang/test/SemaSYCL/device-attributes.cpp

Apr 17 2019, 8:16 AM · Restricted Project

Apr 16 2019

Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.
Apr 16 2019, 7:08 AM · Restricted Project
Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
Apr 16 2019, 6:24 AM · Restricted Project
Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
Apr 16 2019, 5:34 AM · Restricted Project
Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.

Just to understand how this will work. I would imagine you can have a device function definition preceding its use. When the function is being parsed it's not known yet whether it will be called from the device or not, so it won't be possible to set the language mode correctly and hence provide the right diagnostics. So is the plan to launch a separate parsing phase then just to extract the call graph and annotate the device functions?

I'm not an expert in clang terminology but I will try briefly explain our current implementation approach.
In SYCL all kernel functions should be template functions so these functions have a deferred instantiation. If we found that we instantiated a sycl kernel function - we add it to a special array with sycl device functions (you can see the corresponding code here and here, actually AddSyclKernel adds declaration to the special array inside the Sema). After performing
pending instantiations we run a recursive AST visitor for each SYCL kernel to mark all device functions and add them to a special array with SYCL device functions (here we start traverse AST from MarkDevice function, code of MarkDevice is here).
To get a correct set of SYCL device functions in produced module we added a check for all declarations inside the CodeGen on sycl_device attribute existence - so it will ignore declarations without sycl_device attribute if we are compiling for SYCL device (code is here). But with this check it's possible situation when function was parsed and ignored by the CodeGen before we added `sycl_device' attribute to it so we added yet another parsing action inside the clang::ParseAST to generate code for all SYCL device functions from the special array (code is here).

Apr 16 2019, 5:06 AM · Restricted Project

Apr 15 2019

Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Applied comment from @bader.

Apr 15 2019, 4:39 AM · Restricted Project
Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Applied comments from @bader

Apr 15 2019, 4:05 AM · Restricted Project
Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
Apr 15 2019, 1:30 AM · Restricted Project

Apr 12 2019

Fznamznon updated the diff for D60455: [SYCL] Implement SYCL device code outlining.

Applied comments from @aaron.ballman and @keryell

Apr 12 2019, 7:24 AM · Restricted Project

Apr 9 2019

Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.

I was just wondering since SYCL is intended to be a single source C++ for OpenCL and this attribute is for internal use is it possible to just reuse existing OpenCL kernel attribute?

I have raised a couple of related questions on the earlier RFC btw but there hasn't been any follow up since then I believe.

Apr 9 2019, 10:44 AM · Restricted Project
Fznamznon added inline comments to D60455: [SYCL] Implement SYCL device code outlining.
Apr 9 2019, 7:49 AM · Restricted Project
Fznamznon added a comment to D60455: [SYCL] Implement SYCL device code outlining.

Hi all,

Apr 9 2019, 6:11 AM · Restricted Project
Fznamznon added a reviewer for D60455: [SYCL] Implement SYCL device code outlining: bader.
Apr 9 2019, 5:39 AM · Restricted Project
Fznamznon added reviewers for D60455: [SYCL] Implement SYCL device code outlining: jlebar, keryell, Naghasan, ABataev, Anastasia.
Apr 9 2019, 5:38 AM · Restricted Project
Fznamznon created D60455: [SYCL] Implement SYCL device code outlining.
Apr 9 2019, 5:36 AM · Restricted Project

Feb 22 2018

Fznamznon abandoned D42842: [MCJIT] Eliminate overhead in case of multiple subsequent calls to llvm::MCJIT::getFunctionAddress.

Overhead not reproduced on latest version of LLVM.

Feb 22 2018, 5:26 AM

Feb 11 2018

Fznamznon added a comment to D42844: [OpenCL] Add test for atomic pointers..

Yes, we don't have anything OpenCL specific for atomic pointers.
But we have OpenCL specific in pointers and atomics separately and we have address spaces.
Why not to test all at once?

Feb 11 2018, 11:16 PM

Feb 2 2018

Fznamznon added a reviewer for D42844: [OpenCL] Add test for atomic pointers.: Anastasia.
Feb 2 2018, 7:22 AM
Fznamznon created D42844: [OpenCL] Add test for atomic pointers..
Feb 2 2018, 7:22 AM
Fznamznon created D42842: [MCJIT] Eliminate overhead in case of multiple subsequent calls to llvm::MCJIT::getFunctionAddress.
Feb 2 2018, 6:36 AM

Jan 25 2018

Fznamznon added a reviewer for D42532: [OpenCL] Add "cles_khr_int64" extension.: bader.
Jan 25 2018, 6:01 AM
Fznamznon created D42532: [OpenCL] Add "cles_khr_int64" extension..
Jan 25 2018, 5:52 AM

Dec 18 2017

Fznamznon added a reviewer for D41344: Use unicode version of CreateFileMapping function.: bader.
Dec 18 2017, 2:24 AM
Fznamznon created D41344: Use unicode version of CreateFileMapping function..
Dec 18 2017, 2:21 AM