• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Page Information

    Loading...
  1. Dashboard
  2. Undefined Space
  3. Lanai
  4. High Level Milestones

High Level Milestones

  • Created by Ajit Ghaisas, last modified on Mar 05, 2021

High Level Milestones

MilestonesJIRA IDOwnerTarget Completion Comments
Primitive rendering
Oracle/JetBrains


Implementation is done

Image rendering
JetBrains

Implementation is done (except for Bicubic interpolation - for which SW rendering fallback exists)

Text rendering
Oracle


Implementation is done

1st early access (EA-1)
Oracle/JetBrains

15 May 2020

Released
Stabilization and bug fixing
Oracle/JetBrains
In progress
IDE performance Testing
Oracle/JetBrains

TBD


Execute JTREG tests and match current passrate
Oracle

TBD

Metal pipeline should pass all the same jtreg tests as OpenGL : i.e. no functional regressions
Pass all JCK tests
Oracle

TBD


Functional complete with performance
Oracle/JetBrains

TBD


2D Alias Review Start
Oracle/JetBrains

TBD

Lanai does not require reviews before pushing.
Once we are functional complete, we should start reviews of the code to make sure it conforms to style/quality/etc expectations, as well as reviewing the code for correctness, robustness etc.

Task List

All active issues (including tasks, subtasks and bugs) in Lanai project can be accessed with JBS filter  : https://bugs.openjdk.java.net/issues/?filter=37832


Early Access Release History


Early Access ReleaseDateContents
EA-1

15 May 2020

First EA release
EA-219 Jun 2020

Fixes on top of EA-1

  • 8247464: Memory Leak in MTLBlitLoops_CopyArea() method
  • 8247304: Use separate MTLCommandQueue for final blit and MTLDrawable
  • 8246495: Lanai: update AA clip info on GPU via compute shader
  • 8246454: Lanai: Create RenderPerf tests for rectangular and shape clips
  • 8242952: fixed MTLBlitLoops::replaceTextureRegion (add correct offset
  • 8242354: support for bufImgOps (RescaleOp, LookupOp, ConvolveOp)
  • 8246331: Lanai: do not update AA clip info in nonAA mode
  • 8246239: Revert JDK-8244193 as it causes performance regression
EA-310 Jul 2020

Fixes on top of EA-2

  • 8242950: Files which can't be selected has different color with metal than opengl in JFileChooser

  • 8247772: Lanai: Several jtreg tests fails with assertion validateTextureDimensions: 759: failed assertion
    'MTLTextureDescriptor has width greater than maximum allowed size of 16384'

  • 8248301: Lanai - Change MTLStorageMode of MTLSurfaceData texture (render backbuffer) to private

EA-408 Aug 2020

Fixes on top of EA-3

  • 8233226: Implement XOR Mode rendering option
  • 8247564: Lanai - SwingSet2 - Motif LF - UI controls border is incorrectly drawn with uiScale=1.0
  • 8244402: Lanai - Motif L&F - Non selected Radio button is barely rendered on non-retina display
  • 8248831: Lanai : SwingSet2Demo Input dialog is not proper for MetalLookAndFeel with default non-retina display
  • 8240221: XOR mode rendering option does not work with Texture paint and Gradient Paint
  • 8247556: Lanai : J2DDemo - ImageOps demo - Few options are not working...
  • 8247831: Clamp texture height to maxTextureSize(16384)
  • 8249174: Fix improper glyph cache initialization logic for text rende...
  • 8243953: Optimize encoder creation/deletion logic for LCD text rendering
EA-518 Sep 2020

Fixes on top of EA-4

  • 8252845: Regressions in Sanity tests after JDK-8251032
  • 8252798: Cleanup LCD text rendering code
  • 8252386: Lanai: Implement RadialGradientPaint in shader
  • 8252706: Enable usage of rowBytesOffset for LCD non cache rendering
  • 8251032: Colors with texture background look different with Alpha Com...
  • 8252385: Lanai: Implement LinearGradient paint in shader
  • 8243547: Lanai - Netbeans IDE has BLACK background for the Toolbar and Statusbar
  • 8240164: Test java/awt/Window/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java fails for metal
  • 8240074: Test java/awt/Window/TranslucentJAppletTest/TranslucentJAppletTest.java fails for metal
  • 8251027: DrawString with TexturePaint is corrupted
  • 8242920: Gradient Paint doesn't work with metal
  • 8252371: LCD text rendered with Metal pipeline is corrupted
  • 8252217: Crash in metal pipeline which running J2DBench test
  • 8252057: Crash in metal pipeline when dragging any Swing app to other...
  • 8251484: Performace drop in FlatBoxAA renderperf test for metal pipeline
  • 8251242: Tile based rendering results in artifacts in last column while using metal pipeline
  • 8249659: [Lanai] Crash while running RenderPerfTest with metal pipeli...
  • 8251167: Drawing polyline twice in XOR mode leaves out some traces on screen (only with uiScale=1.0)
EA-608-Oct-2020

Fixes on top of EA-5

  • 8253931: Lanai: MTLTexturePool refactoring
  • 8253840: Lanai - MTLClip.beginShapeClip method uses a larger temporary buffer than needed
  • 8252790: Lanai: Refactor RenderPerfTest to run single test by name
  • 8253657: Lanai: Refactor MTLTexturePool - getTexture
  • 8251475: sun/java2d/pipe/hw/RSLAPITest/RSLAPITest.java fails with metal pipeline
  • 8246194: Performance of Mix.Balls decreases when Rendering Quality option is Selected
  • 8252796: Lanai: Shape clip test artifacts on MacBook Air 2020
  • 8252499: UI text of application with metal pipeline is lost when another application is launched with OpenGL pipeline
  • 8253301: Lanai: Memory leak in MTLContext code
  • 8253260: Fix whitespace errors in .m and .metal files in lanai repo
  • 8252795: Lanai: Refactor native implementation of MTLPaint
  • 8251023: Clipping of Image doesnt work when Alpha composite is enabled in J2DDemo
  • 8252880: Image operations are not working with metal
  • 8252895: Black background in SwingSet2 in Nimbus LAF
  • 8252949: Shape clip should use identity transform for drawing clip spans
EA-718-Nov-2020

Fixes on top of EA-6

  • 8256331: Lanai: DrawImage/IncorrectAlphaSurface2SW fails
  • 8252954: Lanai : java/awt/datatransfer/DataFlavor/DataFlavorRemoteTest.java fails
  • 8252951: Lanai : java/awt/Robot/NonEmptyErrorStream.java fails
  • 8251033: Background texture is not visible when Alpha Composite is enabled
  • 8238533: [Lanai] Support texture paint where source is transparent
  • 8248129: Swingmark numbers are not good for Nimbus LAF
  • 8255212: J2DDemo : Rectangle in Texture paint disappears if we enable AA
  • 8255149: Lanai: DrawImage/IncorrectAlphaConversionBicubic.java failure
  • 8244718: J2DDemo - AlphaComposite tab - output colors are different with AA & non-AA
  • 8254881: Commit commandbuffer after draw happens through JNI
  • 8254879: Implement JNI path for Draw Poly
  • 8254869: Refactor check_previous_op usage in Mask Fill
  • 8244845: Lanai : J2DDemo - Clipping - Two parallel lines do not appear with AA Rendering
  • 8242924: Selection is not correct in Paint.TextureAnim
  • 8253994: J2DDemo: Buttcap, SquareCap color is different in AlphaComposite mode
  • 8252726: Lanai: IDEA Editor Rendering OGL vs Metal 1:2
  • 8254176: Lanai: MTLTexturePool optimize lookup of expired textures
EA-817-Dec-2020

Fixes on top of EA-7

  • 8257886: Build issue in macOS 10.14
  • 8256683: Lanai: NetBeans IDE - AA Text rendering appears brighter compared to OpenGL
  • 8242925: J2DDemo - Anti-Aliasing with Metal differs from OGL
  • 8257618: Lanai: GradientPaint interpolates over stops limits
  • 8257566: Lanai: System runs out of application memory while running the Unmanaged_BufferredImage_draw_NearestNeighbor test multiple times
  • 8257441: Lanai: java/awt/image/VolatileImage/DrawHugeImageTest fails
  • 8257442: Lanai: Create RenderPerf tests for SW to HW blits
  • 8257413: Lanai - Use optimum sized temporary buffer while replacing texture region
  • 8238285: Lanai: java/awt/image/DrawImage tests fail
  • 8256576: DrawImage/BlitRotateClippedArea fails
EA-926-Jan-2021

Fixes on top of EA-8

  • 8258658: Print log that metal pipeline is enabled when -Dsun.java2d.metal=True is set
  • 8260000: Remove JNF_COCOA_ENTER/EXIT usage from MTLGraphicsConfig.m
  • 8258754: Gracefully fallback to the OpenGL rendering pipeline if Metal rendering pipeline initialization fails
  • 8259853: Lanai: nonAA Gradient painting is not precise for VI
  • 8259939: Remove JNF_COCOA_ENTER/EXIT usage from Lanai project
  • 8258202: Lanai: Buffered image loses its shape after clicking on Alpha Composite option
  • 8258202: Lanai: Buffered image loses its shape after clicking on Alpha Composite option
  • 8252950: Lanai : sun/java2d/DirectX/OpaqueImageToSurfaceBlitTest/OpaqueImageToSurfaceBlitTest.java fails
  • 8259653: Multistop gradients incorrectly works with non uniform stops
  • 8245256: Cleanup OpenGL references in Metal documentation
  • 8259341:Remove useage of JNFCallVoidMethod from Metal.
  • 8259038: Stop CVDisplayLink when there is no active rendering
  • 8247332: Checkbox reaches inconsistent state on tap to click
  • 8251477: java/awt/Frame/MiscUndecorated/RepaintTest.java fails with metal pipeline
  • 8247739: Lanai : SwingSet2Demo -More than one radio button can be selected the same time
  • 8252501: Sometimes more than one menu items are shown as highlighted on hover
  • 8242187: Lanai - JCheckBox and JRadioButton can get into inconsitent visual state – but recover on window refresh
  • 8252907: Motif L&F - SwingSet2 - Two Toolbar buttons are shown as selected
  • 8258482: Lanai: reduce data for shape clip using bounding box
  • 8258257: Lanai: optimize stencil texture clear code
EA-1003-Mar-2021

Fixes on top of EA-9

  • 8262750: Crash in J2DDemo after multiple plug/unplug of monitor
  • 8262729: Cleanup OpenGL references from Metal implementation
  • 8262496: Lanai: Do not use resources of off-line MTLDevice
  • 8262313: Override stencilAttachmentPixelFormat to maintain appropriate state
  • 8262293: Remove redundant end of encoder for AAShader rendering
  • 8261891: sanity/client/SwingSet/src/EditorPaneDemoTest.java fails with Metal API Validation
  • 8262115: Crash on graphics card switch when Metal API validation enabled
  • 8262091: Add RenderPerfTest for XOR mode rendering
  • 8261646: Crash in MTLBlitLoops when Metal API Validation enabled
  • 8261960: replaceTextureRegion throws error when Metal API validation is enabled
  • 8260715: Lanai: MTLGraphicsConfig.m _getMTLConfigInfo optimization
  • 8261703: Many java/awt/ tests fail with Metal API Validation Stencil PixelFormat error
  • 8261908: DrawScanline vertex calculation is not proper
  • 8261734: Some jtreg tests are failing with invalid setRectClip
  • 8261789: Add bounds check to MTLBlitLoops CopyArea method
  • 8261705: Swing jtreg tests fail Metal API Validation with missing buffer binding
  • 8261706: Swing test fails Metal API Validation with setVertexBytes error
  • 8261712: Lanai: Crash in MTLClip when Metal API Validation enabled
  • 8261704: Many java/awt/ tests fail with Metal API Validation synchronizeTexture error
  • 8261638: Lanai: crash in Clipping tab of J2Demo
  • 8261632: Cached text AA rendering crashes with Metal API validation
  • 8261620: Running metal with API validation crashes immediately
  • 8261547: Minor memory leak reported for Metal Rendering pipeline
  • 8261143: Code in MTLGraphicsConfig.m can use ThreadUtilities performOnMainThreadWaiting:YES block:^()
  • 8261546: Cleanup deadcode in MTLBlitLoops
  • 8261402: Verify whether we need ContextCaps in metal
  • 8261273: RenderPerf test files should have GPL license without Classpath exception
  • 8261430: Remove redundant #ifndef HEADLESS checks from metal native code
  • 8261399: Cleanup code based on code review comments
  • 8261304: Clean up anomalies identified in code review comments
  • 8261234: Lanai build fails due to leftover import of JavaNativeFoundation.h
  • 8261134: Remove additional blank lines at EOF
  • 8260857: Remove JNFWeakJObjectWrapper from Lanai Project
  • 8260711: Lanai: Refactor MTLContext, MTLGraphicsConfig, MTLSurfaceData
  • 8260706: Minor cleanup - CGLGraphicsConfig.java and MTLBlitLoops.m
  • 8260681: Lanai: Refactor MTLBlitLoops.m, common.h, shaders.metal
  • 8260672: Lanai: refactor MTLBlitLoops, MTLLayer, MTLSurfaceData
  • 8260651: Build fails after fix for JDK-8260640
  • 8254868: Remove additional logging added under JDK-8229819
  • 8260640: Cleanup dead code and comments imported from OpenGL
  • 8260553: Lanai: pipeline substates use while loop for resize
  • 8260582: Clean up MacOSFlags implementation
  • 8260578: Replace wildcard imports with specific ones
  • 8260554: Missing copyright headers on some Lanai files
  • 8260247: Move RenderPerfTest from demo to test directory
  • 8252952: Lanai: VolatileImage/BitmaskVolatileImage test fails
Overview
Content Tools
ThemeBuilder
  • No labels

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.21
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 224, "requestCorrelationId": "4cc26db7919bd196"}